欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 建筑 > 【C++】类和对象(二)

【C++】类和对象(二)

2025/11/5 18:49:58 来源:https://blog.csdn.net/hefaxiang/article/details/145329639  浏览:    关键词:【C++】类和对象(二)

   示例:对属性和行为加以权限限制

#include<iostream>
#include<string>
using namespace std;
class  person
{
public :string m_name;//姓名
protected:string m_car;//汽车
private :int  m_password;//银行卡密码
public:void  func(){m_name = "张三";m_car = "卡车";m_password = 123;}
};
int main()
{//实例化对象person p1;p1.m_name = "李四";p1.func();system("pause");return 0;
}

1、struct 和class  区别

在C++中struct和class唯一的区别就在于默认的访问权限不同。

示例:

#include<iostream>
#include<string>
using namespace std;
class c1 {int m_a;//默认权限是私有
};
struct c2
{int m_a;//默认权限为公共
};
int main()
{c1 c1;c1.m_a = 10;c2 c2;c2.m_a = 100;system("pause");return 0;
}

结果:

2、成员属性设置为私有

优点一:将所有成员属性设置为私有,可以自己控制读写权限。

优点二:对于写权限,我们可以检测数据的有效性.

示例:

#include<iostream>
#include<string >
using namespace std;class   person
{
public ://设置姓名void setName(string name){m_Name = name;}string getName(){return m_Name;}//设置偶像void setIdol(string idol){m_idol = idol;}
private:string m_Name;//姓名  可读可写int m_age;//年龄   只读string m_idol;//偶像  只写
public://检测数据的有效性//设置年龄:0~150岁void setAge(int age){if (age < 0 || age>150){cout << "年龄输入有误,赋值失败" << endl;}m_age = age;}
};

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com