news 2026/3/12 6:36:38

C++小知识点

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C++小知识点

一、const

1、放在成员函数列表的后面

2、const实际修饰该成员函数隐含的this指针,表明在该成员函数中不能对类的任何成员进行修饰

Date* const this---->const Date* const this

3、所有不修改的成员函数都需要加,可以检查出将‘==’写成‘=’导致的错误

二、取地址运算符重载

取地址运算符重载分为普通取地址重载和const取地址重载,一般这两个编译器自动生成的就够我们使用了,不需要显示实现。除非有坏心思,不想让别人取到当前类的地址,就可以自己实现并胡乱返回一个地址

下面是这两个函数(一般不用写)

那么就来说说怎么使坏吧,下面呢是正常地址

如果我们这样做

那么

就会返回一个错误的地址了,就可以整蛊同学/事了。

三、类型转换

2构造一个A的临时对象,再用这个临时对象拷贝构造aa2,编译器遇到连续构造+拷贝构造————>优化为直接拷贝

四、再探构造函数

1、初始化列表以一个冒号开始,接着是以一个逗号分隔的数据成员列表,每个成员变量后面跟着一个放在括号中的初始值或表达式

下面这两个必须在初始化列表中,还有一个是没有合适默认构造函数可用。其他的可以函数体也可以初始化列表,两者也可以同时出现

2、

每个成员变量在初始化列表中只能出现一次

3、有的的变量也可以不初始化

结果就是

4、再看下面这个图

这依然是声明,不是定义,后面的1是缺省值 ,给初始化列表使用

5、尽可能使用初始化列表

每个成员都要走初始化列表

1>在初始化列表初始化的成员

2>没有在初始化列表的成员

a.声明的地方有缺省值用缺省值

b.没有缺省值

x.内置类型:不确定,看编译器,大概率随机值

y.自定义类型:调用默认构造,没有默认构造就编译报错

3>引用const没有默认构造自定义 必须在初始化列表初始化

6、初始化列表中按照成员变量在类中声明顺序进行初始化,跟成员在初始化列表出现的先后顺序无关。建议声明顺序和在初始化列表的顺序保持一致 。看下面这个题

这段代码先声明了_a2,先走,_a2(_a1),而此时_a1还未初始化,所以是随机值,再走,_a1(a),a是1则_a1的值为1

trying to do better!!!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/11 9:47:07

大数据领域 OLAP 的维度建模与业务需求匹配

大数据领域 OLAP 的维度建模与业务需求匹配关键词:大数据、OLAP、维度建模、业务需求匹配、数据仓库摘要:本文聚焦于大数据领域中 OLAP 的维度建模与业务需求匹配这一关键问题。首先介绍了研究背景,包括目的范围、预期读者等。接着阐述了维度…

作者头像 李华
网站建设 2026/3/7 7:42:55

谷歌浏览器护眼插件使用

电脑看久了眼睛很累,谷歌浏览器可以通过安装扩展插件的方式,让网页的颜色变成护眼模式,保护眼睛。安装插件具体操作:找到‘访问谷歌应用商店’(有可能打不开,打不开就要用魔法,只需要在第一次安…

作者头像 李华
网站建设 2026/3/11 23:43:37

飞算科技JavaAI引领行业智能化转型

在软件开发领域,Java作为应用场景广泛的主流编程语言,其工程开发环节正面临效率瓶颈凸显、代码质量波动、人力成本攀升等多重挑战。推动Java工程智能化升级,已成为行业实现高质量发展必须解决的核心课题。飞算数智科技(深圳&#…

作者头像 李华
网站建设 2026/3/9 15:32:31

COZE编程-起飞起飞起飞(一句话生成你的应用)

从零构建智能体、工作流与应用等等的方法描述你的需求:等等等等最终的智能体问:搜索过去2个月的招聘行业政策并分析影响评测说明:1.效果偏差,但是基本能否完成2.功能是真多3.市场反应真快其他主推的workflow生成:refly…

作者头像 李华
网站建设 2026/3/11 17:18:29

测试工具创新:驱动软件质量新纪元

创新为何至关重要 在数字化浪潮中,软件已渗透至各行各业,从金融交易到医疗设备,无不依赖高质量代码。然而,传统测试方法如手动测试和脚本化自动化已难以应对日益复杂的系统。测试工具创新通过引入智能化、集成化和用户友好化元素…

作者头像 李华