C++Note 类和对象 封装二(类的访问权限)(struct和class区别)
类在设计时,可以把属性和行为放在不同的权限下,加以管理
访问权限有三种
**1.public 公有权限 类内可以访问 类外可以访问
**2.protected 保护权限 类内可以访问 类外不可以访问 继承中 子类可以访问父类的保护内容
**3.private 私有权限 类内可以访问 类外不可以访问 继承中 子类不可以访问父类的私有内容
1 #include <iostream> 2 using namespace std; 3 4 //三种权限 5 //public:类内类外都可以访问 6 //protected:类内可以访问 类外不可以访问 继承中 子类可以访问父类的保护内容 7 //private:类内可以访问 类外不可以访问 继承中 子类不可以访问父类的私有内容 8 class Person 9 { 10 public: 11 //公共权限 12 string m_Name;//姓名 13 protected: 14 //保护权限 15 string m_Car;//汽车 16 private: 17 //私有权限 18 int m_Passward;//密码 19 public: 20 void func() 21 { 22 m_Name = "name"; 23 m_Car = "car"; 24 m_Passward = 123; 25 } 26 }; 27 int main() 28 { 29 Person p1; 30 p1.m_Name = "name1"; 31 //m_Car m_Passward 在类外访问不到 32 system("pause"); 33 return 0; 34 }
struct和class区别:
struct 默认权限为公共
class 默认权限为私有
1 #include <iostream> 2 using namespace std; 3 4 class C1 5 { 6 int m_A;//默认权限为私有 7 }; 8 struct C2 9 { 10 int m_B;//默认权限为公共 11 }; 12 13 int main() 14 { 15 C1 c1;//class c1 16 //c1.m_A = 10;//私有无法访问 17 C2 c2;//struct c2 18 c2.m_B = 100;//公共 可以访问 19 system("pause"); 20 return 0; 21 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)