Parametr pthread_create - dotaz na C++ckare

Jacek Kopecky kopeckyj na inf.upol.cz
Čtvrtek Únor 4 16:55:28 CET 1999


 > class MujThreadT
 > {
 >  public void * muj_thread(void *xx)
 > ....
 > }
 > 
 > MujThreadT Muj;
 > create_pthread(&Muj->muj_thread)
 > ^^^^^^^^^ a toto ale uz nefunguje, hodi to nekompaktibilitu typu. Pokousel
 > jsem se to ruzne pretypovat, ale asi spatne. Nevite nekdo, jak to vyresit?

Dobry den.
Metody objektů mají jeden skrytý parametr, this, který ukazuje na instanci,
pro niž je tam metoda vyvolána. Proto dochází k nekompatibilitě typů a řešit
to (asi) jde opravdu jen přes wrapper-funkci - normální funkci, která jedině
zavolá onu metodu. Parametr this je totiž nutný a (možná kromě u statických
metod) se ho nedá zbavit. Ale statické metody jsou zřídka vhodné.
Zdraví

                                       Jacek Kopecký

E-mail: jacek.kopecky na upol.cz (ISO Latin 2 compatible)
WWW:    http://www.inf.upol.cz/~kopeckyj




Další informace o konferenci Linux