C++学习面向对象之封装

本文介绍了C++面向对象编程中的封装特性,包括其意义与实现方式。详细解释了如何使用public、protected和private权限来控制类成员的访问,并对比了class与struct在默认权限上的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C++学习面向对象之封装

面向对象有三大特征:封装、继承、多态
面向对象有属性与行为

封装的意义一

1、将属性与行为作为一个整体,表现生活中的事物
2、将属性与行为加以权限控制
语法:class 类名{访问权限: 属性/行为}
属性/行为统一叫做成员
属性叫做:成员属性、成员变量
行为叫做:成员函数、成员方法

class Dog { public int age;public void eat();....};
Dog dog1;//创建具体的一个对象dog1;这个叫做实例化一个对象
dog1.age = 2;//通过小点点进行对属性与行为进行操作

封装的意义二

类在设计时,可以把属性与行为放在不同的权限下,加以控制

权限:

public : 公共的 成员 在类内可以访问,内外可以访问
protected :保护的 成员 在类内可以访问,内外不可以访问 (子也可以访问父中的保护权限)
private : 私有的 成员 在类内可以访问,内外不可以访问 (子不可以访问父中的私有权限)

class 与 struct 的区别

在c++中class与struct唯一不同在于默认访问的权限不同(struct也可以看作一个类)
class的默认访问权限是private
struct的默认访问权限是public

将成员设置为私有

优点:
1、将所有成员属性设置为私有,可以控制成员属性的读写权限
2、对于写的权限,可以检测数据的有效性(set(){判断写的数据的合法性})

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值