首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #inc1ude<iostream> using namespace std; c1ass A{ public: static int a; void init(){a=1;} A(in
有如下程序: #inc1ude<iostream> using namespace std; c1ass A{ public: static int a; void init(){a=1;} A(in
admin
2019-06-12
67
问题
有如下程序:
#inc1ude<iostream>
using namespace std;
c1ass A{
public:
static int a;
void init(){a=1;}
A(int a=2){int();a++;)
};
int A::a=0;
A obj;
int main()
{
cout<<obj.a;
return 0:
j
}
运行时输出的结果是( )。
选项
A、0
B、1
C、2
D、3
答案
B
解析
此题实际考查的是变量作用域的屏蔽效应。在C++中,当标识符的作用域发生重叠时,在一个函数中声明的标识符可以屏蔽函数外声明的标识符或全局标识符.声明类A的全局对象时,构造函数首先调用u}t函数,但由于静态成员变量a被构造函数内部的形参a所屏蔽所以a++改变的是形参a的值,对静态成员变量a没有影响。
转载请注明原文地址:https://kaotiyun.com/show/qU8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列有关指针的用法中,错误的是()。
有如下程序:#includeusingnamespacestd;classTestClass{protected:TestClass(){cout
通过使用new和delete两个运算符进行的分配为【】存储分配。
面向对象程序设计思想的主要特征中不包括
对于派生类的构造函数,在定义对象时构造函数的执行顺序:先执行调用______的构造函数,再执行调用子对象类的构造函数,最后执行派生类的构造函数体中的内容。
A、 B、 C、 D、 Dc++语言中析构函数为符号“~”加类名,且析构函数没有返回值和参数,故前不加void关键字。所以正确的形式应该是~Myclass()。
不能重载的运算符是
某二叉树有5个度为2的结点以及3个度为1的结点,则该二叉树中共有【】个结点。
在表达式x+y*z中,+是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的是()。
下列关于虚函数与函数重载区别的叙述中不正确的是()。
随机试题
奥苏贝尔认为,学生的学习主要是()
在腹部闭合性损伤行手术治疗时,如未找到明确损伤,应进行探查的顺序
某公司2008年4月6日签发一张支票,但是该公司在开户银行账户上的资金数额为30万元,支票确定的付款日是4月15日,该公司在开户银行账户上的资金数额为20万元。根据规定,该公司签发的这张支票金额不得超过()万元
关于宣传材料的说法正确的是()。
生活中人们常说,温故知新,熟能生巧。学习中老师也经常要求学生要有一定数量的重复练习。学生要获得知识,不能没有复习。但是复习却要讲究方式和方法,要适度。请问怎样组织复习才能减少遗忘,提高记忆效果?
五连音是将基本音符分成均等的_________来代替基本划分的_________。
IntheUnitedStates,itisnotcustomarytotelephonesomeoneveryearlyinthemorning.Ifyoutelephonehimearlyintheday,
Wearingseat-beltswhendrivingisnow______bylaw.
WashingtonUniversityinSaintLouis,Missouri,isamedium-sizeduniversity.Ithaseleventhousandstudents.Twelvepercentof
A.agreewithB.meaningfulC.shareD.experienceE.demandF.undertakeG.norms
最新回复
(
0
)