首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #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
2021-05-06
9
问题
有如下程序:
#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://jikaoti.com/ti/vBh0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#include#includeusingnamespacestd;classMyBag{public:MyBag(stringbr,stringcr):brand(br),
if语句的语法格式可描述为:格式1:if(<条件>)<语句>或格式2:if(<条件>)<语句1>else<语句2>关于上面的语法格式,下列表述中错误的是()。
下列关于this指针的叙述中,正确的是()。
有如下程序:#includeusingnamespacestd;intmain(){inta[10];for(int*p=a;p
有以下程序段:#include#defineMAX(x,y)(x)>(y)?(X):(y)voidmain(){intij,k;i=10;j=15;k=MAX(i,j)*10;
有如下程序段:inti=100;while(inti=10){cout
层次型、网状型和关系型数据库划分原则是( )。
若MyClass为一个类,执行“MyClassa[4],*p[5];”语句时会自动调用该类构造函数的次数是()。
数据库系统的核心是()。
下列字符中,可以出现在合法的C++标识符中的是
随机试题
某青年志愿者协会最近招募了一批大学生志愿者,主要服务于城乡结合部的外来务工人员子女。以下关于该志愿者协会义务的说法,错误的是()。
E-R图向关系模式转换时,实体标识符转换为关系的________。
(2013年4月,2007年4月)简述供应商关系控制过程的步骤。
下列哪种情形不发生诉讼时效中止()。
对员工进行分析与定位的主要工作不包括()。
只要给足了时间和适当的教学,几乎所有的学生对几乎所有的内容都能达到掌握的程度。这是()。
设n阶矩阵A非奇异(n≥2),A*是A的伴随矩阵,则
Mr.WhiteWasunhappybecausehishairstoppedgrowing.ThebarberaskedMr.Whitetousecreamonhisheadtohelphairgrow.
Ifexcellentworkresultsinfrequentpayincreasesorpromotions,theworkerswillhavegreater______toproduce.
Peoplehavebeenpaintingpicturesforatleast30,000years.Theearliestpictureswerepaintedbypeoplewhohuntedanimals.T
最新回复
(
0
)