保护成员
1. 定义
和私有成员差不多,多了一个可以访问的对象,派生类的成员函数可以访问父类的保护变量
class Box
{
protected: //这就是一个保护成员
double width;
};
2. 什么是派生类
子类名:父类名
class SmallBox:Box // SmallBox 是派生类,派生类的成员函数可以访问父类的保护成员
public:
void setSmallWidth( double wid );
double getSmallWidth( void );
};
3. 什么是子类的成员函数
子类名::函数名
double SmallBox::getSmallWidth(void)
{
return width ;
}
void SmallBox::setSmallWidth( double wid )
{
width = wid;
}
#include <iostream>
using namespace std;
class Box
{
protected:
double width;
};
class SmallBox:Box // SmallBox 是派生类
{
public:
void setSmallWidth( double wid );
double getSmallWidth( void );
};
// 子类的成员函数
double SmallBox::getSmallWidth(void)
{
return width ;
}
void SmallBox::setSmallWidth( double wid )
{
width = wid;
}
// 程序的主函数
int main( )
{
SmallBox box;
cout<<box.width<<endl;//这个是错误的类外不能访问,只有子类的成员函数才能访问,所以什么点什么是不对的
// 使用成员函数设置宽度
box.setSmallWidth(5.0);//子类的成员函数可以访问父类的保护成员
cout << "Width of box : "<< box.getSmallWidth() << endl;
return 0;
}