[求助]几道选择题,请帮忙做一下,谢谢
单项选择题
1.面向对象程序设计中的数据隐藏指的是
A.输入数据必须输入保密口令
B.数据经过加密处理
C.对象内部数据结构上建有防火墙
D.对象内部数据结构的不可访问性
2.下列各项中不符合函数重载必须满足的条件的是
A.必须有不同的参数个数
B.对应的参数类型必须不相同
C.A和B必须同时满足
D.A和B只要满足一个即可
3.下列带缺省值参数的函数说明中,正确的说明是
A.int Fun(int x,int y=2,int z=3);
B.int Fun(int x=1,int y,int z=3);
C.int Fun(int x,int y=2,int z);
D.int Fun(int x=1,int y,int z=3);
4.有如下的对类“CSample”的说明,其中错误的是。
class CSample{
A.int a=23;
B.CSample();
public:
C.CSample(int val);
D.~CSample();
}
5.已知类A中的一个成员函数的说明如下:
void Set(A &a);
则该函数的参数“A &a”的含义是
A.指向A的指针为a
B.将变量a的地址赋给类A
C.类A对象引用a用作函数的形参
D.变量A与a按位与后作函数参数
6.若类A和类B的定义如下:
class A{
private:
int i,j;
public:
void get();
};
class B:public A{
protected:
int k;
public:
void make();
};
void B::make(){k=i*j;}
在上面的程序中,非法的表达式是。
A.void get();
B.int k;
C.void make();
D.k=i*j;
7.下面的主程序中,语句错误的是。
class A{
int i;
public:
virtual void fun()=0;
A(int a){i=a;}
};
class B{
int j;
public:
void fun(){cout<<”B::fun()\n”;}
B(int b,int c):A(b){j=c;}
};
void main()
{
A.A a(5);
B.A *pa;
C.B b(7);
D.B *pb;
}
8.拷贝构造函数的作用是
A.进行数据类型的转换
B.用对象调用成员函数
C.用对象初始化对象
D.用一般类型的数据初始化对象
9.下列说法中,正确的说法是
A.所有的运算符都能被重载
B.运算符被重载时,它们的优先级与结合性不会改变
C.当需要时,我们可以自定义一个运算符来进行重载
D.每个运算符都可以被重载成成员函数和友元函数
10.下面对结构或类中成员的访问中,不正确的访问是
A.pointer.salary;(其中pointer为指向类对象的指针)
B.pointer->salary;
C.x=worker.salary;(其中worker为具有类类型的对象)
D.Location &rA=A;int x=rA.GetX();(Location为已定义的类,A为对象)
11.C++源程序文件的缺省扩展名为
A.cpp B.exe C.obj D.lik
12.设x和y均为bool量,则x||y为假的条件是
A.它们均为真 B.其中一个为真 C.它们均为假 D.其中一个为假
13.下面的函数声明中,哪一个是"void BC(int a,int b);"的重载函数?
14.假定a为一个数组名,则下面的哪一种表示有错误。
A.a[i] B.(*a)++ C.*a D.*(a+1)
15.假定AB为一个类,px为指向该类动态对象数组的指针,该数组长度为n,则执行"delete[]px;"语句时,自动调用该类析构函数的次数为。
A.0 B.1 C.n D.n+1