Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

the[V]oid

Alter Hase

Beiträge: 775

Wohnort: Aachen

  • Private Nachricht senden

21

03.08.2007, 18:32

Du kannst in ThreadProc den Parameter lpParam einfach nach sPlayer* casten.

Toa

Alter Hase

  • »Toa« ist der Autor dieses Themas

Beiträge: 944

Beruf: Research associate

  • Private Nachricht senden

22

03.08.2007, 18:45

Ui wie kann ich denn den Paramter auf sPlayer* casten ? ich hatte an sowas gedacht :

C-/C++-Quelltext

1
2
3
4
5
void *voidPtr;

voidPtr = wPlayer;        
wPlayer = (int *)voidPtr;
threadHandle =CreateThread(NULL, 0,  ThreadProc, voidPtr, 0, &threadId);


und der thread :

C-/C++-Quelltext

1
DWORD WINAPI ThreadProc(LPVOID voidPtr)


Nur klappt das net gibt nen fehler :

Quellcode

1
cannot convert int* to sPlayer* in assigment

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

23

03.08.2007, 18:59

C-/C++-Quelltext

1
2
3
4
void *voidPtr;

voidPtr = wPlayer;       
wPlayer = (int *)voidPtr;


Was genau willst du? ein sPlayer* an void*, oder ein void* an sPlayer*, oder ein void* als int* an sPlayer* ???
@D13_Dreinig

the[V]oid

Alter Hase

Beiträge: 775

Wohnort: Aachen

  • Private Nachricht senden

24

03.08.2007, 19:19

Ich verstehe nicht, was du mit dem int* willst, aber so etwa müsste die Antwort auf die Frage "wie kann ich dem Thread diesen Zeiger Übergeben sPlayer *wPlayer ?" aussehen:

Quellcode

1
2
3
4
5
6
7
8
int main() {
    sPlayer* wPlayer;
    threadHandle = CreateThread(NULL, 0,  ThreadProc, wPlayer, 0, &threadId);
}

DWORD WINAPI ThreadProc(void* lpParam) {
    sPlayer* wPlayer = static_cast<sPlayer*>(lpParam);
}

Toa

Alter Hase

  • »Toa« ist der Autor dieses Themas

Beiträge: 944

Beruf: Research associate

  • Private Nachricht senden

25

04.08.2007, 06:34

Okay thema abgehakt klappt alles wunderbar

Werbeanzeige