默认构造函数和构造函数的差别它们在构造时需要注意什么,可以举例说明吗?

超超甜甜2022-10-04 11:39:541条回答

已提交,审核后显示!提交回复

共1条回复
memorywwping 共回答了22个问题 | 采纳率81.8%
根据你的类元素需要,自己写自己的构造函数,如:数据初始化赋值,指针分配空间并初始化等
如果不想做这些,就不用写了,系统会自动给你生成一个!
1年前

相关推荐

定义圆类circle,数据成员有半径radius,成员函数有默认构造函数,默认半径为10,构造函数,计算圆面积圆周长以及
定义圆类circle,数据成员有半径radius,成员函数有默认构造函数,默认半径为10,构造函数,计算圆面积圆周长以及输出函数,分别构造默认对象和半径为15的对象,输出各对象的周长和面积
猫猫强1年前1
huangxi2096 共回答了17个问题 | 采纳率82.4%
#include#define PI 3.14159class Circle{private:float radius,girth,area;public:Circle(float r=0);//构造函数(以半径为参数,缺省值为0)Circle(Circle &c);//复制构造函数void input();//输入半径void jisuan();//计算周长、面积void output();//输出半径、周长和面积};Circle::Circle(float r){radius=r;}Circle::Circle(Circle &c){radius=c.radius;}void Circle::input(){coutradius;}void Circle::jisuan(){ girth=2*PI*radius; area=PI*radius*radius;}void Circle::output(){cout
C++中,默认构造函数、无参构造函数、带有默认值的构造函数,究竟怎么区分?
C++中,默认构造函数、无参构造函数、带有默认值的构造函数,究竟怎么区分?
我本来还清楚的,把书一看就什么都不清楚了.麻烦能否举几个简单的例子说明一下呢?
我懂了.只剩下默认构造函数这里不清楚.我得出的结论是:
默认构造函数可以理解为:
1.调用时不必提供参数的构造函数.
2.所有参数都具有默认值的构造函数.
3.参数表为空的构造函数.换句话说,无参构造函数就是默认构造函数.
是不是对的?
whyxkm1年前1
liuxin1021 共回答了23个问题 | 采纳率87%
默认构造函数就是:在你不提供任何构造函数的情况下,系统给出的一个不带参数,不包含函数代码的构造函数;
如果类的声明中没有构造函数,那么系统自动为类提供一个默认构造函数.如果类中声明了构造函数,那么系统不再提供默认构造函数,此时用户如果还要使用无参构造函数,则需要自己重载构造函数.
关于默认构造函数的问题我对默认构造函数不太理解,我看到书上写着是如果一个类中没有构造函数,系统就给创造一个构造函数,有什
关于默认构造函数的问题
我对默认构造函数不太理解,我看到书上写着是如果一个类中没有构造函数,系统就给创造一个构造函数,有什么实际意义呢,如果一个类中有数据成员,不通过主函数进行初始化,也就是说通过在构造函数中赋初值对其初始化,这是不是就是默认构造函数,我实在是不懂,还有就是构造函数时进行变量分配空间,如果一个类中数据成员只有一个类对象,并且类中的类对象没有数据成员及不用进行初始化,创建类时也就是通过类中构造函数来进行,但是构造函数并没有类对象,怎么还调用了类对象的构造函数
撒旦的十字架1年前1
以海为陵 共回答了17个问题 | 采纳率82.4%
当你new一个对象时,如果没有构造函数,就必须调用默认的构造函数啊.你不写的话,编译器默认创建空构造函数.new了一个对象以后,这个对象就不是null了,如果是空构造函数,那么里面的类成员还是null.这不影响,因为还可以用set方法来初始化它们.
我也只能这样说说而已,因为还不太明白你的意思
下面函数中,可以作为虚函数的是( ) A 普通函数 B 默认构造函数 C 带参构造函数 D 析构函数
下面函数中,可以作为虚函数的是( ) A 普通函数 B 默认构造函数 C 带参构造函数 D 析构函数
下面函数中,可以作为虚函数的是( )
A 普通函数 B 默认构造函数 C 带参构造函数 D 析构函数
roseran1年前1
暗夜幽谷 共回答了15个问题 | 采纳率86.7%
A和D应该是都可以的,