程序员笔记 (八十九)C++中的struct和class


外向笑小鸭子
外向笑小鸭子 2024-01-12 14:30:30 52322 赞同 0 反对 0
分类: 资源 标签: 后端
程序员笔记 (八十九)C++中的struct和class

(一)

C++中的struct和class在语法上有很多相似之处,最主要的区别在于默认的访问权限不同。struct默认的访问权限为public,而class默认的访问权限为private。在C++11标准之前,struct只能包含数据成员,不能包含成员函数。然而,从C++11开始,struct也可以定义成员函数了。

这一改变的主要原因是为了使C++的语法更加统一和一致。在C++中,结构体(struct)的本质是一种自定义的数据类型,它可以包含一组相关的数据成员,并通过这些数据成员来表示某种实体。然而,实际上,很多结构体在实现过程中需要进行一些操作和处理,例如计算、比较、输出等等。如果只能使用全局函数来实现这些操作,那么代码的可读性和可维护性会大大降低。因此,将成员函数引入到结构体中,可以更方便地将数据和操作封装在一起,提高代码的可读性和可维护性。

此外,C++的设计哲学是“尽量让程序员掌控”,允许在struct中定义成员函数也是为了给程序员更多的自由度和灵活性,使得C++更加适合实现复杂的数据结构和算法。在实践中,struct中定义成员函数的用途很多,例如实现链表、树等数据结构,或者实现自定义类型的比较、赋值、打印等操作。

需要注意的是,struct中定义成员函数时,需要注意访问权限的设置,确保数据的封装性和安全性。另外,使用struct定义成员函数的语法和class是一致的,可以使用public、private、protected等关键字来控制访问权限。

如果您发现该资源为电子书等存在侵权的资源或对该资源描述不正确等,可点击“私信”按钮向作者进行反馈;如作者无回复可进行平台仲裁,我们会在第一时间进行处理!

评价 0 条
外向笑小鸭子L0
粉丝 0 资源 87 + 关注 私信
最近热门资源
银河麒麟桌面操作系统备份用户数据  123
统信桌面专业版【全盘安装UOS系统】介绍  116
银河麒麟桌面操作系统安装佳能打印机驱动方法  108
银河麒麟桌面操作系统 V10-SP1用户密码修改  101
最近下载排行榜
银河麒麟桌面操作系统备份用户数据 0
统信桌面专业版【全盘安装UOS系统】介绍 0
银河麒麟桌面操作系统安装佳能打印机驱动方法 0
银河麒麟桌面操作系统 V10-SP1用户密码修改 0
作者收入月榜
1

prtyaa 收益393.62元

2

zlj141319 收益217.85元

3

1843880570 收益214.2元

4

IT-feng 收益208.98元

5

风晓 收益208.24元

6

777 收益172.71元

7

Fhawking 收益106.6元

8

信创来了 收益105.84元

9

克里斯蒂亚诺诺 收益91.08元

10

技术-小陈 收益79.5元

请使用微信扫码

加入交流群

请使用微信扫一扫!