unvollständiger Tippfehler

Ich versuche Klasse A zu einem Freund der Klasse B zu machen.

<code>class B;

class A{
public:
void show(const B&); // ##1## but this one works fine  
B ob;// error incomplete type

};


class B{
public:
int b;
B():b(1){}
friend class A;  

};
</code>

also meine frage warum es unvollständig ist typ? Das dachte ich mir, als ich es tatclass B Es ist wie ein Prototyp einer Funktion, die dem Compiler mitteilt, dass sich irgendwo im Code eine Definition befindet.

auch im obigen code um ## 1 ## warum ist das möglich?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage