首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class A { public: static int a; void init() { a = 10; } A(int a = 5) { init
有如下程序: #include using namespace std; class A { public: static int a; void init() { a = 10; } A(int a = 5) { init
admin
2015-06-27
47
问题
有如下程序:
#include
using namespace std;
class A {
public:
static int a;
void init() { a = 10; }
A(int a = 5) { init(); a+=10; }
};
int A::a = 0;
A obj;
int main()
{
cout << obj.a;
return 0;
}
运行时输出的结果是
选项
A、0
B、5
C、15
D、10
答案
D
解析
静态数据成员独立于任何对象而存在,不是类对象的组成部分,普通成员函数可以引用静态数据成员。程序定义了类A,并在A的定义体外初始化A的静态数据成员a=0,构造函数A(int)中的形参a与A::a属于不同的变量,在函数A(int)中,形参a屏蔽了A::a,所以A(int)中引用的变量a是形参,而不是A::a,对a的任何操作都不影响A::a,而成员函数init中引用的是A::a,语句a=10是将A::a赋值为10,所以输出obj.a其实是输出A::a,结果为10;答案为D。
转载请注明原文地址:https://kaotiyun.com/show/5RNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下函数charfun(char*P){returnp;}该函数的返回值是______。
整型变量a定义后赋初值的结果是______。inta=2.8*6
下面______机制允许对一个函数名给出多个函数定义
使用白盒测试方法时,确定测试数据应根据______和指定的覆盖标准。
当将E-R模型转换为关系模型时,对于两实体间m:n联系,必须对“联系”单独建立______,用来联系双方实体。
下列对重载函数的描述中,()是错误的。
在关系数据库中,用来组织索引结构联系的是()。
下面叙述错误的是______。
数据管理技术发展过程经过人工管理、文件系统和数据库系统三个阶段,其中数据独立性最高的阶段是【 】。
下列关于this指针的叙述中,正确的是
随机试题
工作簿是指()
A.近端小管B.髓袢降支细段C.髓袢升支细段D.髓袢升支粗段肾小管液中NaCl被显著浓缩的部位是
血栓性外痔的主要症状是()结缔组织外痔的主要症状是()
带下过多的主要发病机理错误的是
房地产中介服务信用档案的构成为()。
沥青三大指标是:()。
下列选项中,()是对进出口许可证制度基本内容的概括。
中国特色社会主义道路
一跨国企业计划7月份在全球两个大城市同期举办大型室外活动,为避免降雨影响活动效果,选择下列哪两个城市最为合理?()
求下列积分:
最新回复
(
0
)