06. september 2004 - 13:30
Der er
5 kommentarer og 1 løsning
kan man det her (std::map , få alt indhold)
først min struct: struct gameserveruser { unsigned int socket; DWORD ptr; string username; unsigned long userobjid; int16 mapx; int16 mapy; int16 mapid; }; map<int,struct gameserveruser> gsuser; kan man nu, få alle brugere på serveren, (dword ptr er den jeg skal bruge) f.eks int getallonline() { gsuser = gsuser.begin(); unsigned int cp; while( gsuser != gsuser.end() ) { cp = gsuser.get_allocator() DWORD userptr = gsuser[cp].ptr; // gør noget med min userptr } return 0; } (den der virker self ikke) men hvordan kan det (hvis det kan) lade sig gøre at få alle i mappen ?
Annonceindlæg fra DE-CIX
06. september 2004 - 13:35
#1
Eksempel på gennemløb af map: #include <cstdlib> #include <iostream> #include <map> #include <string> using namespace std; int main() { map<int,string> MyMap; for(int i=0;i<20;i++) { int key = rand(); string val = "Test"; MyMap.insert(make_pair(key,val)); } map<int,string>::iterator it; for(it=MyMap.begin();it!=MyMap.end();it++) { cout << it->first << " " << it->second << endl; } return 0; }
06. september 2004 - 14:53
#4
Hvis man kører en console app fra Windows og gerne vil have tid til at læse output inden DOS vinduet lukker, så kan man putte den linie ind sidste i programmet.
06. september 2004 - 15:29
#5
ah takker, men det virkede, helt vildt :) hvis du smider et svar arne så smider jeg lige pointsne til dig