001
24.04.2007, 22:20 Uhr
FloSoft
Medialer Over-Flow (Administrator)
|
naja du könntest ja sowas wie folgendes Machen:
Die Objekte:
C++: |
class A { int foo; int bar; };
class B { int foo; int bar; };
|
Client:
C++: |
A a; B b;
send(sizeof(a), sizeof(unsigned int)); send(&a, sizeof(a)); send(sizeof(b), sizeof(unsigned int)); send(&b, sizeof(b));
|
Server:
C++: |
A *a; B *b; char *temp; unsigned int length;
while(irgendwas) { recv(length, sizeof(unsigned int)); temp = new char[length]; recv(temp, length); a = dynamic_cast<A*>(temp); if(a) { // war a objekt } b = dynamic_cast<B*>(temp); if(b) { // war b objekt }
delete[] temp; }
|
Hab das jetzt nicht getestet, könnte aber funktionieren.
Ansonsten bleibt dir natürlich nichts anderes als z.b Konstanten/enum für die Typen definieren, Programmiererfehler sind da halt leider natürlich nicht auszuschließen. -- class God : public ChuckNorris { }; |