Mein Problem ist es , dass ich eine Klasse habe (nehmen wir als Beispiel Auto)
und eine Funktion (Beispiel : BremswegBerechnen) habe , die aber in einem extra Thread laufen soll . Also so in etwa :
Das das so nicht funktioniert , habe ich auch schon festgestellt , was ich leider nicht machen kann ist folgendes :
Das funktioniert aufgrund meiner momentanen Situation nicht
(Ich will den Code ja nicht für die Klasse Auto haben , sondern für eine andere bereits vorhandene Klasse , würde ich aber mein Code hier posten , würde das den Rahmen sprengen , da er recht umfangreich ist und sehr viele verwirren wird , weil darin Funktionen enthalten sind , die eig. nur sehr wenige kennen dürften)
Ich habe es bereits mit der "Klasse" Boost von dieser Seite probiert :
[Only registered and activated users can see links. Click Here To Register...]
Leider kommen bei meinem Compiler ein paar Errors (ich benutze wxDev-C++ , mit VC++ habe ich die Klasse noch nicht probiert , da ich eigentlich nur sehr ungerne auf VC++ umsteigen möchte , vorallem weil mir die wxDev-C++ so sehr ans Herz gewachsen ist)
Hier mal die Errors :
und der dazugehörige Code (Ist ein beispiel COde , also sollte er funktionieren)
Die Verzeichnisse sind ganz sicher richtig gesetzt und es sind auch ganz sicher alle Datein vorhanden . Habe auch schon Neuinstallation von wxDev-C++ gemacht und es kamen die selben Errors , ich hoffe mir kann jemand helfen oder eine Alternative zu dieser Klasse geben ...
Danke schonmal im vorraus
und eine Funktion (Beispiel : BremswegBerechnen) habe , die aber in einem extra Thread laufen soll . Also so in etwa :
Code:
.
.
.
int main()
{
CreateThread(NULL,NULL,(LPTHREAD_START_ROUTINE)BMW.BremswegBerechnen, 0, 0, 0);
}
.
.
.
Code:
int main()
{
CreateThread(NULL,NULL,(LPTHREAD_START_ROUTINE)test, 0, 0, 0);
}
void test()
{
BMW.BremswegBerechnen;
}
(Ich will den Code ja nicht für die Klasse Auto haben , sondern für eine andere bereits vorhandene Klasse , würde ich aber mein Code hier posten , würde das den Rahmen sprengen , da er recht umfangreich ist und sehr viele verwirren wird , weil darin Funktionen enthalten sind , die eig. nur sehr wenige kennen dürften)
Ich habe es bereits mit der "Klasse" Boost von dieser Seite probiert :
[Only registered and activated users can see links. Click Here To Register...]
Leider kommen bei meinem Compiler ein paar Errors (ich benutze wxDev-C++ , mit VC++ habe ich die Klasse noch nicht probiert , da ich eigentlich nur sehr ungerne auf VC++ umsteigen möchte , vorallem weil mir die wxDev-C++ so sehr ans Herz gewachsen ist)
Hier mal die Errors :
Code:
Compiler: Default GCC compiler
Building Makefile: "C:\Dokumente und Einstellungen\Benutzername\Desktop\Neuer Ordner\Makefile.win"
Finding dependencies for file: C:\Dokumente und Einstellungen\Benutzername\Desktop\Neuer Ordner\main.cpp
Führt make... aus
make.exe -f "C:\Dokumente und Einstellungen\Benutzername\Desktop\Neuer Ordner\Makefile.win" all
g++.exe -c main.cpp -o main.o -I"C:/Programme/Dev-Cpp/lib/gcc/mingw32/3.4.5/include" -I"C:/Programme/Dev-Cpp/include/c++/3.4.5/backward" -I"C:/Programme/Dev-Cpp/include/c++/3.4.5/mingw32" -I"C:/Programme/Dev-Cpp/include/c++/3.4.5" -I"C:/Programme/Dev-Cpp/include" -I"C:/Programme/Dev-Cpp/" -I"C:/Programme/Dev-Cpp/include/common/wx/msw" -I"C:/Programme/Dev-Cpp/include/common/wx/generic" -I"C:/Programme/Dev-Cpp/include/common/wx/html" -I"C:/Programme/Dev-Cpp/include/common/wx/protocol" -I"C:/Programme/Dev-Cpp/include/common/wx/xml" -I"C:/Programme/Dev-Cpp/include/common/wx/xrc" -I"C:/Programme/Dev-Cpp/include/common/wx" -I"C:/Programme/Dev-Cpp/include/common" -I"C:/Dev-Cpp/include"
In file included from C:/Dev-Cpp/include/boost/thread/future.hpp:12,
from C:/Dev-Cpp/include/boost/thread.hpp:24,
from main.cpp:1:
C:/Dev-Cpp/include/boost/exception_ptr.hpp:43: error: looser throw specifier for `virtual boost::exception_ptr::~exception_ptr()'
C:/Dev-Cpp/include/boost/exception/detail/exception_ptr_base.hpp:27: error: overriding `virtual boost::exception_detail::exception_ptr_base::~exception_ptr_base() throw ()'
make.exe: *** [main.o] Error 1
Ausführung beendet
}
Code:
#include <boost/thread.hpp>
#include <iostream>
void wait(int seconds)
{
boost::this_thread::sleep(boost::posix_time::seconds(seconds));
}
void thread()
{
for (int i = 0; i < 5; ++i)
{
wait(1);
std::cout << i << std::endl;
}
}
int main()
{
boost::thread t(thread);
t.join();
}
Danke schonmal im vorraus