访问权限private public protected的问题
#include<iostream.h>
class animal
{
public:
void eat()
{
cout<<"animal eat"<<endl;
}
void sleep()
{
cout<<"animal eat"<<endl;
}
void breath()
{
cout<<"animal breath"<<endl;
}
};
class fish:privateanimal
{
};
void main()
{
animal an;
fish fh;
an.eat();
fh.eat();
}
编译词程序时出现错误
error C2248: 'eat' : cannot access public member declared in class 'animal'
如果把第18行的红色字体private改成public则一切正常。请问,此处是不是只能用public公有化继承,而不能用private和protected来替代啊?