当前位置: 首页 > news >正文

C++类的构造函数

1、what

类的特殊成员函数,用来初始化类对象的数据成员。

只要类对象被创建,就会被执行。

构造函数的名字和类名相同,可以包含“0”个(其实有一个编译器生成的合成默认构造函数,只是看不见而已)、1个或多个构造函数,没有返回值,不同构造函数使用参数数量或参数类型进行区分。

构造函数有形参列表和函数体(两者可能皆为空)。

构造函数不能被声明为const。

  1. 对象初始化:构造函数的主要目的是初始化对象的状态。在构造函数执行时,对象刚刚被分配内存但尚未被初始化。如果构造函数被声明为const,那么它将不能修改对象的任何成员变量,这与构造函数的初衷相违背。

  2. this指针:每个非静态成员函数都有一个隐式的this指针,指向调用该函数的对象。对于const成员函数,this指针的类型是const ClassName*(对于类ClassName),这意味着在函数体内不能通过this指针修改对象的状态。而构造函数需要能够修改对象


http://www.mrgr.cn/news/53483.html

相关文章:

  • 如何安装MySql
  • JavaWeb 23.NPM配置和使用
  • 【数据分享】中国历史学年鉴(1979-2001)
  • [创业之路-154] :图解:结构需求分析、结构设计、加工、生产的整个流程与常见问题
  • R语言机器学习算法实战系列(八)逻辑回归算法 (logistic regression)
  • 链动2+1芸众商城421+全插件独立版源码
  • Spring Boot如何访问不同的数据库
  • Android 14.0 Recent列表不显示某个app
  • 【开源论坛】论通过事件对象分派,模拟用户输入文本的行为(花了300大洋学到了本应该学到的知识点)
  • Go 语言中格式化动词
  • 【分布式微服务云原生】《Redis RedLock 算法全解析:应对时钟漂移与网络分区挑战》
  • commonjs和esmodule的导入导出细节
  • Scalad的高阶函数的定义
  • I春秋CTF——Misc题合集(更新中)
  • LC1491.去掉最低工资和最高工资后的工资平均值
  • 【MySQL】提高篇—索引与性能优化:索引的概念与类型(单列索引、复合索引、全文索引)
  • 布隆过滤器
  • [MySQL课后作业]人事管理系统的SQL实践
  • 【C++】哈希的应用——位图
  • 三菱PLC如何实现数据排序的分析?