关于const关键字说法错误的是()
第1题:
( 31 ) 有如下类定义 :
class MyBase{
int k;
public:
MyBase(int n=0):k(n){ }
int value( )const{ return k;}
};
class MyDerived: MyBase{
int j;
public:
MyDerived(int i): j(i) {}
int getK( )const{ return k; }
int getJ( )const{ return j; }
};
编译时发现有一处语法错误 , 对这个错误最准确的描述是
A )函数 getK 试图访问基类的私有成员变量 k
B ) 在类 MyDerived 的定义中,基类名 MyBase 前缺少关键字 public ,protected 或 private
C )类 MyDerived 缺少一个无参的构造函数
D )类 MyDerived 的构造函数没有对基类数据成员 k 进行初始化
第2题:
说明静态数据成员时,前面要加关键字const。()
第3题:
Avoid print( ) const;
Bconst void print( );
Cvoid print( );
Dvoid print(const);
第4题:
关于常成员函数,下列说法中错误的是
A.常成员函数无法更新对象的数据成员,但可以访问其他类的公用数据成员或全局变量
B.常成员函数无法更新对象的数据成员,但是可以更新该对象的常数据成员
C.常成员函数既可以被常对象调用,也可以被一般对象调用
D.常成员函数不仅要在声明中用到const修饰符,在定义时也必须使用const修饰符
第5题:
A.const char *p=”ABCD”;
B.char const *p=”ABCD”;
C.char *const p=”ABCD”;
D.const char *const p=”ABCD”;
第6题:
关于const修饰符的说法中,错误的是
A.const既可以修饰成员函数,也可以修饰数据成员,还可以修饰对象
B.若const修饰了一个对象,则该对象中的所有数据成员都无法被更新
C.常对象无法调用一般成员函数
D.常成员函数只能被常对象调用,不能被一般对象调用
第7题:
此题为判断题(对,错)。
第8题:
有如下类定义:
class MyBase{
int k;
public;
MyBase(int n=0):k(n){}
int value()const{return k;}
};
class MyDerived; MyBase{
int j;
public;
MyDerived(int i): j(i){}
int getK()const {return k;}
int gutj()const{return j;}
};
编译时发现有一处语法错误,对这个错误最佳准确的描述是____
A.函数getK 试图访问基类的私有成员变量K
B.在类MyDerived 的定义中,基类名MyBase 前缺少关键字public、protected 或private
C.类MyDerived 缺少一个无参的构造函数
D.类MyDerived 的构造的数没有对基数数据成员K 进行初始化
第9题:
有如下类定义:
class Bag {
public:
Bag(int p,char s='M'):price(p),size(s) { count++; }
~Bag() { count--; }
int GetPrice() { return price; }
int GetPrice() const { return price; }
void SetPrice(int val) const { price=val; }
private:
int price;
char size;
static int count;
};
下列关于类成员的叙述中,正确的是( )。
A. 成员函数GetPrice存在重定义
B.构造函数的参数不能设置默认值
C.析构函数中不能访问静态数据成员
D.成员函数SetPrice不能定义为常函数
第10题:
某类中有一个无参且无返回值的常成员函数Show,则正确的Show函数原型是
A.const void Show();
B.void const Show();
C.void Show()const;
D.void Show(const);