有如下程序: #include #include using namespace std; class MyBag{ public: MyBag(string br,string cr):brand(br),color(cr){++count;} —MyB

admin2020-04-07  20

问题 有如下程序:
#include
#include
using namespace std;
class MyBag{
public:
MyBag(string br,string cr):brand(br),color(cr){++count;}
—MyBag(){一一count;}
static int C,etCount(){return count;}
private:
string brand,color;
static int count;
};
int main(){
MyBag one(“CityLife”,“Gray”),two(“Micky”,“Red”);
cout<return 0;
}
若程序运行时的输出结果为2,则横线处缺失的语句是(    )。

选项 A、int count=0;
B、static hat count=0;
C、int MyBag::count=0;
D、static int MyBag::count=0;

答案C

解析 本题考查构造函数和析构函数,以及静态数据成员,题目中要求输出2,那么定义两个对象时,就执行构造函数,使得静态数据成员++count,得到2,那么count初始化就应该为0,静态数据成员初始化时,只能在类体外进行初始化,一般形式为:数据类型类型::静态数据成员名=初值因此本题选C。
转载请注明原文地址:https://kaotiyun.com/show/dC8p777K
0

最新回复(0)