社区
C++ 语言
帖子详情
问个关于构造函数的问题?
haipeng31
2009-02-12 09:06:45
为什么data member of a class type that does not have a default constructor必须用constructor intializer?
...全文
96
10
打赏
收藏
问个关于构造函数的问题?
为什么data member of a class type that does not have a default constructor必须用constructor intializer?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
sxbwelcome
2009-02-21
打赏
举报
回复
对象与一般的变量还是有很大的区别:对象实现了封装,一般不允许直接访问对象的数据成员【一般都设置为private】
那么对他的初始化就不能通过这种形式进行:对象名.成员名=……【结构体变量可以这么使用】
所以只能通过两种途径:构造函数和成员初始化列表
因为构造函数可以任意访问类的数据成员
hyldream
2009-02-21
打赏
举报
回复
up
wzg112
2009-02-12
打赏
举报
回复
[Quote=引用 7 楼 happyboxman 的回复:]
1.C++规定,每个类必须有默认的构造函数,没有构造函数就不能创建对象。
2.若没有提供任何构造函数,那么c++提供自动提供一个默认的构造函数,该默认构造函数是一个没有参数的构造函数,它仅仅负责创建对象而不做任何赋值操作。
3.只要类中提供了任意一个构造函数,那么c++就不在自动提供默认构造函数。
4.类对象的定义和变量的定义类似,使用默认构造函数创建对象的时候,如果创建的是静态或者是全局对象,则对象的…
[/Quote]
很详细!up
happyboxman
2009-02-12
打赏
举报
回复
1.C++规定,每个类必须有默认的构造函数,没有构造函数就不能创建对象。
2.若没有提供任何构造函数,那么c++提供自动提供一个默认的构造函数,该默认构造函数是一个没有参数的构造函数,它仅仅负责创建对象而不做任何赋值操作。
3.只要类中提供了任意一个构造函数,那么c++就不在自动提供默认构造函数。
4.类对象的定义和变量的定义类似,使用默认构造函数创建对象的时候,如果创建的是静态或者是全局对象,则对象的位模式全部为0,否则将会是随即的。
wugaofeng555
2009-02-12
打赏
举报
回复
就跟你问 1+1 为什么等于2一样。
yndfcd
2009-02-12
打赏
举报
回复
如果不在初始化列表中初始化,那么他那此参数要从哪里来?
构造函数必须保证他返回之后,会产生一个完整的对象出来.
waizqfor
2009-02-12
打赏
举报
回复
[Quote=引用楼主 haipeng31 的帖子:]
为什么data member of a class type that does not have a default constructor必须用constructor intializer?
[/Quote]
这就是语法规则 LZ仔细阅读教材
chenzhp
2009-02-12
打赏
举报
回复
有些语法就是这样定义的
szqh97
2009-02-12
打赏
举报
回复
楼主好好看看书吧
taodm
2009-02-12
打赏
举报
回复
规定,就是规定,不再需要理由。
【c++类的
构造函数
】几种写法及
问题
【c++类的
构造函数
】几种写法及
问题
一、
构造函数
的定义 类通过一个或几个特殊的与类同名的成员函数来控制其对象的初始化过程,这些函数叫
构造函数
。
构造函数
的任务是初始化类对象的数据成员,无论何时只要类的对象被创建,就会执行
构造函数
。 该函数无返回类型(是 “ 无 ” 而不是 “ 空 ” (void))。但是该函数有返回值(这个类的对象)。并且一个对象也只能在被创建的时候调用
构造函数
,即一个对象只能调用一次
构造函数
。 (
构造函数
就相当于一个人的出生,析构函数就是一个人的终结。) 特别的,一个类可以有多个
构造函数
构造函数
与析构函数的
问题
总结
目录 C++中有哪些
构造函数
构造函数
的定义
构造函数
的分类
构造函数
相关
问题
问题
一:什么情况下会调用拷贝
构造函数
?
问题
二:赋值初始化和列表初始化的区别?
问题
三:
构造函数
和析构函数的执行顺序 ?
问题
四:
构造函数
能否声明为虚函数或者纯虚函数,析构函数呢?
问题
五:
构造函数
、析构函数、可否声明为内联函数inline
问题
六:
构造函数
和析构函数可以调用虚函数吗?
问题
七:什么情况会自动生成默认
构造函数
?
问题
八:为什么拷贝
构造函数
必须传引用不能传值? C++中有哪些.
c++中
构造函数
调用另一
构造函数
的
问题
今天去一家公司面试,笔试中碰到一个题,觉得有些意思,自己当时其实也没有完全搞清楚,这里跟大家分享一下,也算是自己做个笔记 题目如下:问下列代码的打印结果为0吗? #include #include using namespace std; struct CLS { int m_i;
C++中继承中遇到的
构造函数
问题
今天在开发时遇到了一个之前一直以为理所当然的
构造函数
问题
。 先给总结: 子类在构造时,如果没有显式调用父类的
构造函数
,会先调用父类的默认
构造函数
(无参数的) 下面给出不同情况的例子 例子一:父类有默认的
构造函数
,子类的
构造函数
随便 #include class Base{ public: Base(){ } }; class Derive:public Base{
c#继承的
构造函数
问题
一、什么是继承,有什么作用? 概念: 继承就是在类之间建立一种相交关系,使得新定义的派生类(子类)的实例可以继承已有的基类(父类)的特征和能力,而且可以加入新的特性或者是修改已有的特性建立起类的新层次。 作用: 继承是面向对象的主要特征之一,它可以让你的代码重复使用,可以节省程序设计的时间,继承就是就是在类之间建立一种相交关系,使得新定义的派生类可以继承已有的基类的特征和能力,而且可以加入新的特性或者是修改已有的特性建立起类的新层次。 说明: 比如:你继承了你爸爸的一些特征,你爸爸是基类,
C++ 语言
65,211
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章