Deklarieren des statischen C ++ - Members als Freunde der Klasse, in der es sich befindet (Syntax)

8

Wie lautet die Syntax für die Deklaration einer statischen Memberfunktion als friend der Klasse, in der sie sich befindet?

%Vor%

Kann ich es zu diesem Einliner zusammenfalten?

%Vor%

Gibt es eine andere Möglichkeit, alles in eine einzige Zeile zu falten?

Antwort

Bitte nicht nach unten, dies ist auf mein mangelndes Wissen über C ++ statische Member-Funktionen zurückzuführen. Die Antwort ist, dass sie nicht Freund sein müssen, sie können bereits auf private Mitglieder zugreifen. Also meine Frage war etwas ungültig.

    
unixman83 31.12.2011, 01:59
quelle

3 Antworten

5

Eigentlich keine Notwendigkeit, Freund zu verwenden, wenn es statisch ist, ist genauer. Eine statische Memberfunktion hat wie eine normale Memberfunktion Zugriff auf die Interna der Klasse. Der einzige Unterschied ist, dass es keinen this-Zeiger hat.

%Vor%     
jmucchiello 31.12.2011, 02:14
quelle
2

Die Klassenmitgliedsfunktion kann kein Freund ihrer eigenen Klasse sein - sie ist bereits das Klassenmitglied und kann auf ihre Privatpersonen zugreifen. Was ist der Grund dafür? Es ist nicht Facebook ...

    
littleadv 31.12.2011 02:11
quelle
2

Eine statische Elementfunktion hat standardmäßig Zugriff auf die protected / private -Klassen einer Klasse und muss nicht zu friend gemacht werden.

%Vor%     
Xeo 31.12.2011 02:11
quelle

Tags und Links