下列类的构造函数不能通过编译,正确的构造函数应该是______。
include<iostream.h>
class Sample
{
public:
int n;
const int con;
Sample(int m) {con=m+1;n=m;}
void disp( ) {cout<<"normal:n="<<n<<endl;}
void disp( )const {cout<<"static:n="<<n<<endl;}
};
void main( )
{
const Sample a (12);
Sample b (13);
a.disp( );
b.isp( );
cout<<a.n<<","<<b.con<<endl;
}
第1题:
对于一个类定义,下列叙述中错误的是( )。
A.如果没有定义拷贝构造函数,编译器将生成一个拷贝构造函数
B.如果没有定义缺省的构造函数,编译器一定将生成一个缺省的构造函数
C.如果没有定义构造函数,编译器将生成一个缺省的构造函数和一个拷贝构造函数
D.如果已经定义了构造函数和拷贝构造函数,编译器不会生成任何构造函数
第2题:
5、如果没有给一个类定义构造函数,那么()。
A.该类不能通过编译
B.系统自动创建一个不带参数的构造函数
C.该类不需要构造函数
D.该类没有构造函数
第3题:
下列关于C++中类的构造函数说法正确的是:
A.定义类时用户必须要定义构造函数
B.无论用户是否定义构造函数,编译器都会自动生成一个没有参数的构造函数
C.定义类时如果不定义构造函数,编译器会自动生成一个无参构造函数
D.类对象生成的时候,会通过函数重载调用类中定义的某个构造函数(如果定义了多个)
第4题:
对于一个类定义,下列叙述中错误的是( )。
A.如果没有定义拷贝构造函数,编译器将生成一个拷贝构造函数
B.如果没有定义缺省的构造函数,编译器将一定生成一个缺省的构造函数
C.如果没有定义构造函数,编译器将生成一个缺省的构造函数和一个拷贝构造函数
D.如果已经定义了构造函数和拷贝构造函数,编译器不会生成任何构造函数
第5题:
7、如果没有为一个类定义任何构造函数的情况下,下列描述正确的是()
A.编译器总是自动创建一个不带参数的构造函数
B.这个类没有构造函数
C.这个类不需要构造函数
D.该类不能通过编译