class A
{
protected:
int i;
};
class B: public A
{
public:
void DoAction(A& ra)
{
ra.i = 2;
}
};
void main()
{
}
Компиляю. И получаю:
F:\PRJ\!!! TESTS>cl 1.cpp
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8804 for 80x86
Copyright (C) Microsoft Corp 1984-1998. All rights reserved.
1.cpp
1.cpp(13) : error C2248: 'i' : cannot access protected member declared in class 'A'
1.cpp(5) : see declaration of 'i'
Почему A::i недоступно в потомке?