Frage zu recv(...)
-
@ friggler:
Es funktioniert nur die Version ohne Virtuelle Methoden von aaid
Deine funktioniert leider nicht.(Habe ich getestet)Zwar kopierst du die ersten 4 Byte nicht mit, aber dafür kopiert deine Version die 2ten 4 Byte auf die ersten 4 Byte, in der die Informationen von Virtuel steht usw.
Du kopierst so:
4 Byte virtuel 4 Byte typ 4 Byte Laenge 4Byte werte | | | V V V 4 Byte virtuel 4 Byte typ 4 Byte Laenge 4Byte werte
-
Mensch Mensch Mensch... Das sollte doch kein Problem darstellen...
struct test { int typ; int groesse; int Nutzdaten; void* GetDataPtr() { return &typ; } int GetDataSize() { return sizeof(*this)-4; } }; test *t = new test(); send( server->connectedSocket, t->GetDataPtr(), t->GetDataSize(), 0 );Müsste das nicht funktionieren? Und beim Einlesen das selbe?
-
ja stimmt habs völlig verpeilt. ich denke du brauchst memcpy.
test obj;
memcpy((char*)&obj + 4, ..., ...);aber so das ist alles so eine frickelei! an deiner stelle würde ich boost::serialization nutzen.
-
friggler schrieb:
aber so das ist alles so eine frickelei!
Du heißt doch 'friggler'

-
Badestrand schrieb:
struct test { int typ; int groesse; int Nutzdaten; void* GetDataPtr() { return &typ; } int GetDataSize() { return sizeof(*this)-4; } };Müsste das nicht funktionieren? Und beim Einlesen das selbe?
LOOOOOL, Was soll das denn darstellen ?=?

-
CodeFinder schrieb:
LOOOOOL, Was soll das denn darstellen ?=?


Wollte es ja erst so posten:
struct test { int typ; int groesse; int Nutzdaten; ; test *t = new test(); send( server->connectedSocket, &t->typ, sizeof(test)-4, 0 );aber dann dachte ich, dass er es mit eingebauten Funktionen einfacher findet

-
Badestrand schrieb:
aber dann dachte ich, dass er es mit eingebauten Funktionen einfacher findet

OK, ok, sah nämlich sehr utopisch aus
...
BTW: Das sind Methoden, keine Funktionen
.
-
Ist OK,
ich habe die Version ohne virtuel eingebaut und es klappt prima!Danke an alle!
-
CodeFinder schrieb:
Badestrand schrieb:
aber dann dachte ich, dass er es mit eingebauten Funktionen einfacher findet

OK, ok, sah nämlich sehr utopisch aus
...
BTW: Das sind Methoden, keine Funktionen
.das sind Memberfunktionen, keine Methoden.
-
der es genau nimmt schrieb:
[...]
das sind Memberfunktionen, keine Methoden.lol, nur dumm, dass Memberfunktionen, das gleiche sind wie Methoden
...