Instanciace MAPu pro char *

Uživatelský avatar
Eubie
Matfyz(ák|ačka) level III
Příspěvky: 295
Registrován: 8. 10. 2005 15:35
Typ studia: Informatika Bc.
Kontaktovat uživatele:

Instanciace MAPu pro char *

Příspěvek od Eubie »

Ahoj,
věděl by někdo, jak nainstanciovat kontejner std::map pro char *, tedy něco jako
typedef std::map<char *, Moje_Trida *, XXXX>?
Jde o ten treti argument. Je to funkce, ktera by mela udavat usporadani na tech char *. Standardne je to nějaká šablona less parametrizovaná prvním parametrem toho mapu (u mě char *) ale já nechci aby se porovnávalo podle adres, ale podle řetězců, který ty char * uchovávají. Ta funkce se mi tam prostě nepovedla propašovat. Neví někdo, jak na to?
Díky
qk
Matfyz(ák|ačka) level III
Příspěvky: 181
Registrován: 24. 2. 2005 10:03
Typ studia: Informatika Mgr.
Kontaktovat uživatele:

Příspěvek od qk »

no pokdu to funguje jako u vsech STL co muzou dostavat funktor na konci, tak se to pise jako adresa ty fce nebo instance funktoru.

takze u tebe neco jako

Kód: Vybrat vše

bool porovnej (char *a, char * b)
{
//porovnavani
//spravny poradi
return true;
//spatny
return false;
//u toho true a false si to radsi odzkousej, mne se to plete
}
std::map<char *, Moje_Trida *, porovnej> mapa; //hlavne nesmis u porovnej dat ()!!
Don't worry, be dead
MrCooper
Matfyz(ák|ačka) level II
Příspěvky: 59
Registrován: 17. 1. 2006 17:54

Příspěvek od MrCooper »

Mrkni na example v nasledujicim odkazu:
http://www.sgi.com/tech/stl/Map.html
qk
Matfyz(ák|ačka) level III
Příspěvky: 181
Registrován: 24. 2. 2005 10:03
Typ studia: Informatika Mgr.
Kontaktovat uživatele:

Příspěvek od qk »

no v tom odkazu je akorat misto funkce pouzit funktor, ale myslim ze by to melo chodit i s obycejnymi funkcemi.
ale to const pointer by tam opravdu melo byt, to sem zapomnel
Don't worry, be dead
Odpovědět

Zpět na „2005“