Es wird die gleiche Frage gestellt: Warum erlaubt GCC das Erben von einer privaten geschachtelten Klasse? Für Nicht-Template-Klassen darf es von privaten verschachtelten Klassen erben wenn es ein Freund ist, aber nicht für Vorlagenklassen. Ist es ein Fehler?
%Vor%Fehlermeldung von g ++ 5.3.0:
%Vor%Dies ist definitiv ein gcc-Fehler. gcc hat viele Probleme mit Freundschaften und Vorlagen. Dieses Beispiel erscheint fast genau im Standard, unter [class.friend], Hervorhebung meins:
Wenn eine Klasse als Freund deklariert wird, bedeutet dies, dass die Namen von privaten und geschützten Mitgliedern aus der Klasse stammen Das Gewähren von Freundschaft kann in base-specifiers und Memberdeklarationen der befreundeten Klasse aufgerufen werden.
%Vor%
[Beispiel:-endebeispiel]
Tags und Links c++ nested inheritance templates friend