首页 > 后端开发 > C++ > C 中的内置类型实际上有默认构造函数吗?

C 中的内置类型实际上有默认构造函数吗?

DDD
发布: 2024-12-26 21:27:10
原创
445 人浏览过

Do Built-in Types in C   Actually Have Default Constructors?

内置类型有默认构造函数吗?

阅读了一篇建议 int() 由于默认值而产生 0 的文章后出现了这个问题构造函数,导致人们相信原始类型本质上缺乏构造函数。然而,“TC PL”第 10.4.2 节另有暗示,声称内置类型拥有默认构造函数。

Bjarne Stroustrup 的回应

当询问明显的差异时,Bjarne Stroustrup 澄清说内置类型没有实际的构造函数调用。相反,它们的行为就像它们一样,并且类似构造函数的符号由编译器解释。

技术答案

严格来说,不。内置类型不具有默认构造函数。

功能注意事项

尽管缺少实际的构造函数,但初始化内置类型的语法与构造函数调用非常相似。初始化时使用大括号 ({}) 可以实现整数 (int{0}) 的零初始化以及括号内表达式 (int a{b}) 的复制。

结论

虽然内置类型没有默认构造函数,但它们的初始化语法和行为模拟它们的存在。它们似乎拥有默认构造函数和复制构造函数,允许初始化和赋值。这种伪构造函数机制简化了初始化并提高了代码的可读性。然而,认识到这些类型缺乏真正的构造函数是至关重要的。

以上是C 中的内置类型实际上有默认构造函数吗?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板