class Inner {
private:
int data;
};
class Outer1 {
Inner i;
void f () {
//i.data;// :-) 'int Outer::Inner::data' is private within this context
}
};
template <typename T>
class Outer2 {
Inner i;
void f () {
i.data;// ??? :-( Почему внутри шаблона можно иметь доступ к приватному члену внутреннего класса?
}
};
int main ( void ) {
Outer1 o1;
Outer2 <int> o2;
return 0;
}