首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #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-07-22
42
问题
有如下程序:
#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/vjNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
要定义数组A,使得其中每个元素的数据依次为:3、9、4、8、0、0、0,错误的定义语句是
在C++语言的结构化程序设计中,【】是程序的基本组成单元;在C++语言的面向对象设计框架中,【】是程序的基本组成单元。
下列程序的运行结果为#include<iostream.h>template<classTT>classFF{TTa1,a2,a3;public:FF(TTb1,TTb2,TTb3){
下面程序的运行结果是#include<iostream.h>voidmain(){inti=1;while(i<=8)if(++i%3!=2)continue;
与语句cout<<end1;不等价的是
下面程序的运行结果是#include<iostream.h>classbase{protected:inta;public:base(){cout<<"0";}};
下面程序的运行结果为#include<iostream.h>classA{staticintn;public:A(){n=1;}A(intnum){n=
一些重要的程序语言(如c语言和Pascal语言)允许过程的递归调用。而实现递归调用中的存储分配通常用
下列程序的输出结果为Objectid=0Obiectid=1请将程序补充完整。#include<iostream>usingnamespacestd;classPoint{publi
下列有关C++流的叙述中,错误的是
随机试题
焊接灰铸铁时,为了防止裂纹的产生,应当增大热输人。()
∫abf’(3x)dx=_______.
王某因盗窃被判处拘役后被取保候审,则他不应:
项目国民经济评价的主要指标是()。
建设项目静态投资包括()。
赫尔巴特指出:“我想不到有任何‘无教学的教育’,正如在相反的方面,我不承认有任何‘无教育的教学’。”这说明了教学过程具有()特点。
“头脑风暴法”是公共政策定性分析的方法之一,下列关于该方法的说法错误的是()。
“互见法”
Thesearedarkdaysforthebookbusiness.Borders,aonce-hugebookseller,(1)_____onJuly18ththatitwillclosedownitsrem
Onlyawomaniscapableofstandinginfrontofawardrobepackedfullofclothesandannouncingsadlythatshehasnothingtow
最新回复
(
0
)