Angeben einer Klassenmitgliedsfunktion als Freund einer anderen Klasse?

Gemäß dem C ++ Primer-Buch erwähnte der Autor, dass wir anstelle der gesamten Klasse eine Klassenmitgliedsfunktion als Freund einer anderen Klasse angeben können (Seite 634).

Dann habe ich diesen Code getestet:

<code>class A
{
public:
    friend void B::fB(A& a);
    void fA(){}
};
class B
{
public:
    void fB(A& a){};
    void fB2(A& a){};
};
</code>

Ich wollte nur, dass fB () mit Klasse A befreundet ist, nicht mit der gesamten Klasse B. Aber der About-Code erzeugte einen Fehler:'B' : is not a class or namespace name. (Ich benutze Visual C ++ 2005)

Antworten auf die Frage(7)

Ihre Antwort auf die Frage