Article View: de.comp.lang.c++
Article #846Re: Frage zum friend-Konzept in C++
From: Karl-Heinz Krause
Date: Tue, 21 Nov 1995 16:37
Date: Tue, 21 Nov 1995 16:37
38 lines
1527 bytes
1527 bytes
Am 20. Nov. 1995 schrieb Roger Wegner (MERLEAU@merleau.prima.ruhr.de):
> Hallo allerseits,
> ich habe eine Frage bezüglich des friend-Konzepts in C++. Ich möchte eine Ele-
> mentfunktion einer Klasse B zum Freund einer Klasse A erklären. Klasse B
> wird aber erst nach Klasse A definiert (mal angenommen, das ist wirklich
> nicht zu ändern...).
Wenn eine bestimmte Elementfunktion von B zum Freund von A werden soll,
so muß in der Definition von A sowas wie
friend B::f();
stehen. Das setzt voraus, daß B bereits definiert ist, da nur in der
Definition von B die Elementfunktion f deklariert werden kann. Das ganze
sähe dann etwa so aus:
class A;
class B {
public:
int f(A&);
};
class A {
int i;
friend int B::f(A&);
};
int B::f(A &a) { return a.i; }
Wenn es aus irgendeinem Grund nicht möglich ist, die Definition von B
vor die Definition von A zu schreiben, so bleibt leider keine andere
Möglichkeit als die ganze Klasse B zum Freund von A zu machen.
Karl-Heinz Krause
Technical Details
Message-ID:
<48t2nu$hvu@news00.btx.dtag.de>Path:
arc1-ca.pugleaf.net!news00.btx.dtag.de!not-for-mail!KrauseReferences:
<5yDZrjT0jmB@merleau.prima.ruhr.de>Show Full Headers
Complete Article Headers
Newsgroups: de.comp.lang.c++,fido.ger.c_plusplus Message-ID: <48t2nu$hvu@news00.btx.dtag.de> From: Krause@btx.dtag.de (Karl-Heinz Krause) Path: arc1-ca.pugleaf.net!news00.btx.dtag.de!not-for-mail!Krause Subject: Re: Frage zum friend-Konzept in C++ Date: Tue, 21 Nov 1995 16:37:02 +0000 References: <5yDZrjT0jmB@merleau.prima.ruhr.de> X-Gateway: ZCONNECT XX ius.gun.de [UNIX/Connect v0.73] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit