首先这两个都是访问类中成员权限的限制符。
private是完全私有的,只有自己可以访问,派生类和外部都不可以访问
protected是受保护的,只有派生类可以访问,外部不能访问
在类外如果想使用类中的成员,只能直接使用public类型的,proteced和private都是不能访问的,对于类外而言,这两个是完全相同的。
不能把私有数据的地址或引用泄露出去,外部可以改变私有数据的值。
eg:
class Test
{
public:
char *GetName() {return _name;}
private:
char _name[20];
};