C++ 构造方法
1、构造方法的作用是设置数据成员的初始值。
2、定义一个类Person的实例person的时候,必定会调用Person的构造方法。调用构造方法分为两个步骤:第一步使用初始化列表,第二步在构造方法内部对成员赋值。
3、对于初始化列表,肯定会执行。如果用户没有显式的调用,就会隐式的调用。然后才执行第二步,在构造方法内部赋值。
4、对于初始化列表,对于隐式或者显式中没有初始化的成员,成员的取值取决于下面的情况:
a、如果成员是类类型,使用默认构造方法。(注:对于这种情况,必须保证成员具有默认构造方法)
b、如果是内置类型,分为下面两种情况:
b1、person是全局变量,初始化为0
b2、person是局部变量,不初始化,为oxcccccccc
5、对成员设置一个初始值,在第一步或者在第二步都能达到同样的效果。但是下面几种情况必须在第一步做:
a、const对象
b、引用类型的对象
为什么?因为const对象和引用类型的对象必须进行初始化,因此必须在初始化列表中进行。
注:0xcccccccc:没有初始化,调试的时候都是这个东西,程序不能访问这个地址。
0x00000000:是Null,不指向任何东西。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理