012
14.08.2006, 17:32 Uhr
FunnyDingo
|
Zu meinem obigen Code:
Durch einen kurzen Test habe ich festgestellt, dass dieser nicht funktioniert. Nun habe ich den mal überarbeitet und die Ausgaben auf der Konsole (cout im Kon- und Destruktor) erwecken in mir den Eindruck, als wäre es nun richtig (diesmal direkt aus dem Projekt kopiert):
C++: |
bool userdatabase::add(unsigned int s, string n, string c, string r) { /////////////////////////////////// // Create user object /////////////////////////////////// chatuser *user = new chatuser(s, n); user->color = c; /////////////////////////////////// // Find room to join /////////////////////////////////// chatroom *loginroom = roomdb.find(r); if (loginroom == NULL) { //loginroom = roomdb.find_first_mainroom(); //if (loginroom == NULL) return false; } /////////////////////////////////// // Add user to room /////////////////////////////////// loginroom->add_user(user); /////////////////////////////////// // Keep pointer to room in user object /////////////////////////////////// user->room = loginroom; /////////////////////////////////// // Add user to userlist & return /////////////////////////////////// userlist.push_back(user); return true; } // EndFunc userdatabase::add()
|
Nun werden die User- und Room-Objekte mittels new() erzeugt und in den Vektoren (vielleicht stelle ich noch auf Listen um) befinden sich nur noch Pointer - ich denke so sollte es richtig sein, oder? -- "Der Computer ist die logische Weiterentwicklung des Menschen: Intelligenz ohne Moral." (John James Osborne)
Meine Website: http://www.funnydingo.de |