- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向对象C选择题
若定义:string str; 当语句cinstr; 执行时,从键盘输入:Microsoft Visual Studio 6.0!所得的结果是str=( )。
A. Microsoft Visual Studio 6.0!
B. Microsoft
C. Microsoft Visual
D. Microsoft Visual Studio 6.0
答案:B
解析:cin在接收字符串时,会将遇到的空格符、回车符、Tab符时,都判断为字符串结束。若要输入带空格的字符串,可使用getline()函数。
使用地址作为实参传给形参,下列说法正确的是()
A. 实参是形参的备份
B. 实参与形参无联系
C. 形参是实参的备份
D. 实参与形参指向同一对象
答案:D
解析:地址作为实参,表示实参与形参指向同一个对象,所以选择D项。
下列程序的输出结果是()
#include iostream.h
void main()
{int n[][3]={10,20,30,40,50,60};
int (*p)[3];
p=n;
coutp[0][0],*(p[0]+1),(*p)[2]endl;}
A. 10,30,50
B. 10,20,30
C. 20,40,60
D. 10,30,60
答案:B
解析:如果数组元素都是相同类型的指针,则称这个数组为指针数组。指针数组一般用于处理二
维数组。声明的格式为:数据类型(*变量名)[元素个数]。
p表示指向数组n的行指针。如果将指针的初始化(*p)[3]=b;地址的等价形式:
p+i p[i]*(p+i)都表示b数组第i+1行的第1个元素的首地址。
*(p+i)+jp[i]+j p[i][j]都表示b数组第i+1行、第j+1列元素的地址。
值的等价形式:
*(*(p+i)+j) *(p[i]+j) p[i][j]都表示b数组第i+1、第j+1列元素的值。
所以题目分别访问p[0][0],p[0][1],p[0][2]。
在C++中,函数原型不能标识()
A. 函数的返回类型
B. 函数参数的个数
C. 函数参数类型
D. 函数的功能
答案:D
解析:函数的声明,说明函数的参数、返回类型以及函数名,函数体即实现部分决定功能。所以
函数的原型不能决定函数的功能。
下列有关重载函数的说法中正确的是()
A. 重载函数必须具有不同的返回值类型
B. 重载函数参数个数必须相同
C. 重载函数必须有不同的形参列表
D. 重载函数名可以不同
答案:C
解析:函数的重载必须函数名相同而形参类型或个数不同,与返回值无关。
关于new运算符的下列描述中,错误的是()
A. 它可以用来动态创建对象和对象数组
B. 使用它创建的对象或对象数组可以使用运算符delete删除
C. 使用它创建对象时要调用构造函数
D. 使用它创建对象数组时必须指定对象的初始值
答案:D
解析:new创建的对象数组不能指定对象的初始值,只能调用无参的构造函数,选择D项。
对于int *pa[5];的描述,正确的是()
A. pa是一个指向数组的指针,所指向的数组是5个int型元素
B. pa是一个指向某个数组中第5个元素的指针,该元素是int型变量
C. pa[5]表示某个数组的第5个元素的值
D. pa是一个具有5个元素的指针数组,每个元素是一个int型指针
答案:D
解析:指针数组:数组元素都是相同类型的指针,相同类型的指针是说指针所指向的对象
类型是相同的。例如,语句int *pa[5];定义了一个指针数组。在指针数组的定义中有两个运
算符:*和[],运算符[]的优先级高于*,所以*pa[5]等价于*(pa[5]),pa[5]表示一
个数组,而*表示后面的对象为指针变量,合在一起*pa[5]表示一个指针数组。该数组包含5个
元素,每个元素都是指向int型的指针。所以选择D选项。
解决定义二义性问题的方法有()
A. 只能使用作用域分辨运算符
B. 使用作用域分辨运算符或成员名限定
C. 使用作用域分辨运算符或虚基类
D. 使用成员名限定或赋值兼容规则
答案:B
解析:解决二义性问题主要要两种方法:(1)赋值兼容规则;(2)虚基类。
重载函数在调用时选择的依据中,错误的是()
A. 参数个数
B. 参数类型
C. 函数名字
D. 函数类型
答案:D
解析:在C++中,判断调用哪一个函数,依据的是函数的名字,参数个数和类型;因而D不正确。
重载函数不看函数的返回类型
类和对象
下面( )项是对构造函数和析构函数的正确定义。
A.void X::X(), void X::~X()
B.X::X(参数),X::~X()
C.X::X(参数)
文档评论(0)