Thread-Problem
-
Hallo zusammen,
schon wieder ein Problem, bei dem ich nicht weiss woher es kommt:
Ich habe folgendes im header://--------------------------------------------------------------------------- #ifndef TTimerThreadH #define TTimerThreadH //--------------------------------------------------------------------------- #include <Classes.hpp> //--------------------------------------------------------------------------- class TTimerThread : public TThread { private: protected: void __fastcall Execute(); public: __fastcall TimerThread(bool CreateSuspended); }; //--------------------------------------------------------------------------- #endif
und dasin der Klasse:
//--------------------------------------------------------------------------- #include <vcl.h> #include <sstream.h> #pragma hdrstop #include "TTimerThread.h" #include "Main.h" #include "Tools.h" #include "Splash.h" #include "TProtokoll.h" #pragma package(smart_init) //--------------------------------------------------------------------------- __fastcall TTimerThread::TTimerThread(bool CreateSuspended) : TThread(CreateSuspended) { // Constructor Priority = tpNormal; // Priorität setzten } //--------------------------------------------------------------------------- void __fastcall TTimerThread::Execute() { Application-> MessageBox("Thread started","",16); }
Den Thread versuche ich so zu starten:
Timer_TH = new TTimerThread(true); // neue Instanz des Threads erstellen Timer_TH->Resume(); // und Thread starten Timer_TH->Terminate(); Timer_TH->WaitFor(); if (Timer_TH) // Instanz löschen wenn sie noch existiert { // -> Memoryleakage verhindern delete Timer_TH; Timer_TH = NULL; }
Der Compiler meldet beim erstellen der Instanz aber das:
**
[C++ Fehler] MainForm.cpp(173): E2125 Compiler konnte Standardkonstruktor nicht für die Klasse 'TTimerThread' generieren.
**
Warum, wo ist mein Fehler?Danke für die Hilfe!
[edit] Quelltext nachgeführt
-
Hallo roN,
änder mal die Deklaration im Header ab:
__fastcall TTimerThread(bool CreateSuspended);
Gruß Skay
-
Ah, richtig, doofes doppel-T hab' ich übersehen. Vielen Dank!