005
29.11.2003, 18:29 Uhr
Pablo
Supertux (Operator)
|
Ich weiß nicht, ob GetClientRect(hwnd, &StrPointer->rect); so funktioniert. Mach dann folgendes:
C++: |
#include <iostream> struct RECT { int x; int y; }; struct A { RECT xy; };
void foo(RECT *rect) { rect->x=rect->y=10; }
int main() { A myA; myA.xy.x=myA.xy.y=20; foo(&myA.xy); std::cout << myA.xy.x << " " << myA.xy.y << std::endl; std::cout << &myA << " " << &myA.xy << std::endl; return 0; }
|
Bei mir funktioniert es, und beide Adressen &myA und &myA.xy sind gleich. Ich weiß aber nicht, ob das was ich gemacht habe richtig ist. Auf jeden Fall hat es so funktioniert, aber wie gesagt, könnte es Zufall sein, dass es funktioniert.
Bearbeitung von Supertux: |
Ich hab gemerkt, dass @beefy schon geantwortet hat. Aber ich hab noch ne Frage: Wie funktioniert es bei den Structs? Haben die Members eine eigene Adresse? Oder ist die Adresse gleich? Wieso funktioniert mein Programm? Und wie könnte ich nur auf die Adresse des Memebers zugreifen, falls die Memebrs eine unterschiedliche Adresse haben?
|
-- A! Elbereth Gilthoniel! silivren penna míriel o menel aglar elenath, Gilthoniel, A! Elbereth! Dieser Post wurde am 29.11.2003 um 18:31 Uhr von Pablo Yanez Trujillo editiert. |