Friends
-
Hallo.
Folgende Frage. Ich komme einfach nicht darauf, wie ich von der Klasse a die variable var in der Klasse b benutzen kann, unter der verwendung von friends.Hier mal ein simpler code
class a { private: int varA; public: friend class b; friend int run(); }; class b { private: int varB; public: int run() { varB = varA + varB; } }; int main() { b one; a two; one.run(); }warscheinlich ist es nur ein kleiner Fehler, aber ich kann ihn nicht finden

-
Du wirst wohl schon eine Instanz von a in b brauchen.
-
Es ist die Entscheidung von b, wer sein Freund ist, nicht andersrum

edit: Jetzt seh ich's erst, sieht echt wirr aus. Mein Vorposter hat definitiv recht.
-
Könntet ihr vielleicht es konkretisieren, wie würde der Code dann aussehen?
Sorry für den "wirren" Quelltext, aber mir fiel auf die schnelle kein kurzes Beispiel ein. Geht ja ums Prinzip

Ich sag schonmal Danke für Eure unterstützung!
Mfg
-
int run() { varB = varA + varB; }mal davon abgesehen, dass es operator += gibt...
woher soll class b wissen, welche INstanz von a er nehmen soll (und damit, woher er varA bekommt)...also:
int run (const a &bla) { varB += bla.varA; }bb
-
ah, klingt logisch
