Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [C++] Konstruktor mit Parametern aufrufen (https://www.delphipraxis.net/34027-%5Bc-%5D-konstruktor-mit-parametern-aufrufen.html)

Luckie 16. Nov 2004 09:29


[C++] Konstruktor mit Parametern aufrufen
 
Noch ein Problem. :roll:

Ich habe in der Klasse einen Konstruktor:
Code:
class CFourInARow
{
private:
   HWND m_hWnd;
   HDC m_dcMem;
   HBITMAP m_BMP;
   int m_Left;
   int m_Top;
   int m_DCWidth;
   int m_DCHeight;
   int m_Field[COLUMNS][ROWS];
   void DrawCircle(HDC dc, POINT Centre, INT Diametre);
public:
   CFourInARow(HWND hWnd, HDC dc, INT Left, INT TOP, INT DCWidth, INT DCHeight);
   virtual ~CFourInARow();

};
der so implementiert ist:
Code:
CFourInARow::CFourInARow(HWND hWnd, HDC dc, INT Left, INT Top, INT DCWidth, INT DCHeight)
{
   HBRUSH Brush;
   INT c, r;

   m_hWnd = hWnd;
   m_Left = Left;
   m_Top = Top;
   m_DCWidth = DCWidth;
   m_DCHeight = DCHeight;

   m_dcMem = CreateCompatibleDC(0);
   m_BMP = CreateCompatibleBitmap(dc, DCWidth, DCHeight);
   SelectObject(m_dcMem, m_BMP);
   Brush = CreateSolidBrush(BKCOLOR);
   SelectObject(m_dcMem, Brush);
   Rectangle(m_dcMem, 0, 0, DCWidth, DCHeight);
   for(c = 0; c < COLUMNS; c++) {
      for(r = 0; r < ROWS; r++) {
         m_Field[c][r] = 0;
      }
   }
}
Er hat also ein deutig 6 Parameter. Rufe ich ihn aber so auf:
Code:
static CFourInARow FourInARow(hDlg, GetDC(hDlg), 0, 0, 50, 50);
Sagt mir der Compiler:
Zitat:

E:\C\Programme\in Bearbeitung\FourInARow\FourInARow.cpp(13) : error C2661: 'CFourInARow::CFourInARow' : Keine ueberladene Funktion akzeptiert 6 Parameter
:wall: Was stimmt denn jetzt schon wieder nicht?

Pseudemys Nelsoni 16. Nov 2004 10:49

Re: [C++] Konstruktor mit Parametern aufrufen
 
also n freund von mir hats getestet unter msvc++ und dort funzt dein code einwandfrei

tommie-lie 17. Nov 2004 16:29

Re: [C++] Konstruktor mit Parametern aufrufen
 
Zitat:

Zitat von Pseudemys Nelsoni
also n freund von mir hats getestet unter msvc++ und dort funzt dein code einwandfrei

Jupp.
Michael hatte mich gestern auch per ICQ nochmal deswegen gefragt und ich hatte dann die Freude ihm mitzuteilen, daß er den falschen Header eingebunden hatte :mrgreen:
Der Code ist richtig, nur hatte der Header, den er eingebunden hatte, zwar eine Klasse gleichen Namens implementiert, allerdings hatte diese tatsächlich keinen passenden Konstruktor.

@Michel: Feigling, daß du sowas hier nicht zugibst! :mrgreen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:58 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz