![](https://lstatic.shangxueba.com/sxbzda/h5/images/m_q_title.png)
对于复制构造函数,正确的描述是()。
A.在C++语言中,如果不自定义类的复制构造函数,则每个类都有默认的复制构造函数
B.必须为每个类定义复制构造函数
C.如果要使用复制构造函数,则必须在类中先定义
D.当定义了类的构造函数时,如果要使用复制构造函数,则必须定义复制构造函数
![](https://lstatic.shangxueba.com/sxbzda/h5/images/tips_org.png)
A.在C++语言中,如果不自定义类的复制构造函数,则每个类都有默认的复制构造函数
B.必须为每个类定义复制构造函数
C.如果要使用复制构造函数,则必须在类中先定义
D.当定义了类的构造函数时,如果要使用复制构造函数,则必须定义复制构造函数
第1题
【我提交的答案】: C |
【参考答案与解析】: 正确答案:C |
【我的疑问】(如下,请求专家帮助解答)
为什么是调用3次复制构造函数 不是只有a初始化b b初始化c两次吗
第2题
A、虚基类用于解决浅复制的问题
B、虚基类用于解决访问二义性的问题
C、虚基类不能解决派生类继承得到的同一基类成员的多份拷贝问题
D、实例化对象时,所有派生类的构造函数都会调用虚基类的构造函数
第3题
A、A. 系统不会生成缺省复制构造函数,因此必须自己实现
B、B. 复制构造函数是形如X::X(X)的函数
C、C. Myclass c1, c2; c1.n = 1; c2 = c1;第三句将会调用复制构造函数
D、D. 调用函数A Func() { A a(4); return a; }时,将会调用A的复制构造函数
第4题
A、通常的拷贝构造函数的参数是对象的指针类型
B、如果不自定义拷贝构造函数,系统提供默认的拷贝构造函数
C、如果有自定义的构造函数,系统就不再提供拷贝构造函数
D、如果需要用已有对象为新创建的对象初始化时,就必须自定义拷贝构造函数
第5题
A.复制构造函数和赋值操作是完全一样的操作
B.进行赋值操作时,会调用类的构造函数
C.当调用复制构造函数时,类的对象正在被建立并被初始化
D.复制构造函数和赋值操作不能在同一个类中被同时定义
第6题
A、以下代码,创建B对象的时候,A的构造函数不会被调用,因为没调用super(); class A{ A() { System.out.println("A"); } } class B extends A{ B() { System.out.println("B"); }
B、super必须放在构造函数的第一行!
C、如果没显示调用基类构造函数,也会被隐式调用,并且先于它自己的构造函数。
D、构造函数可以定义多个,并可通过this(参数)的方式调用另外一个构函数。
第7题
A. 在C++语言中,如果不自定义类的拷贝构造函数,则每个类都有默认的拷贝构造函数
B. 必须为每个类定义拷贝构造函数
C. 如果要使用拷贝构造函数,则必须在类中先定义
D. 当定义了类的构造函数时,如果要使用拷贝构造函数,则必须定义拷贝构造函数
第9题
A、该函数只能访问P的私有成员
B、该函数不能访问P的公有成员
C、该函数可以访问P的私有和公有成员
D、该函数不能访问P的成员
第10题
A、class State中三个构造函数,即State()、State(int a[NUMINROW][NUMINROW])和~State()。
B、构造函数State()中,将所有内部变量设置为0
C、在构造函数State(int a[NUMINROW][NUMINROW])中,将状态初始化为数组a中的内容,并完成: 1、设置父指针parent为NULL;2、计算当前状态的HashCode;3、获得空格的位置。
D、上述描述都不对
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!