判断对一个类中的成员的访问权限,要看这段访问成员的代码所处的位置
private:只有处于类成员函数中或友员函数中的访问代码才能访问,注意不仅可以访问该对象中的私有,也可以访问其它该类型对象的私有,如:
class
book
{
public
:
book():name(
"unknown"
),price(0.0){};
book(
const
book&bo):name(bo.name),price(bo.price){}//不仅可以访问this->name,也可以访问bo.name
void
print()
{
cout<<
"name="
<<name<<
" price="
<<price<<endl;
}
private
:
string name;
double
price;
};
protected:处于类的成员函数中,友员函数中,派生类中的函数(包括派生类友元函数)
public:所有位置的代码都可访问