封装
- 将属性和行为作为一个整体
- 将属性和行为加以权限控制
class Circle
{
//访问权限
public:
//属性
int m_r;//半径
//行为
//获取圆的周长
double calculate()
{
return 2 * PI*m_r;
}
};
int main()
{
Circle c1;
c1.m_r = 3;
cout << "周长: " << c1.calculate() << endl;
system("pause");
return 0;
}
封装的意义二:
把属性和行为放在不同的权限下,加以控制
- public:类内可以访问,类外可以访问
- protected:类内可以访问,类外不可以访问,子类也可以访问父类中保护的内容
- private:类内可以访问,类外不可以访问,子类不可以访问父类中保护的内容
struct和class的区别
唯一区别:默认的访问权限不同
- struct 默认权限是 公共
- class 默认权限是 私有
成员属性私有化
- 可以自己控制读写权限
- 对于写权限,可以检测数据的有效性
class Person
{
public:
void setName(string name);
void getName();
private:
string m_Name;
int m_Age;
string m_Lover;
};
void Person::setName(string name)
{
if (name == "") //检测数据的有效性
{
this->m_Name = "";
}
}
网友评论