有以下程序: #include <iostream> using namespace std; int s=0; class sample { static int n; public: samp

admin2013-02-27  18

问题 有以下程序:    #include <iostream>    using namespace std;    int s=0;    class sample    {       static int n;    public:       sample (int i)       {          n=i;       }       static void add()       {          s+=n;       }    };    int sample::n=0;  

选项 A、2
B、5
C、7
D、3

答案2

解析 程序中定义对象a(2)时,通过构造函数使静态数据成员n=2,在定义对象 b(5)时,通过构造函数使静态数据成员n=5(覆盖了前面n=2),再执行“sample::add();”使全局变量s=5。注意:本题程序中尽管代码中静态数据成员n的初始化语句“int sample::n=0;”没有意义(因为各对象中的n值由变量i赋给),但不能省略,否则会出现编译错误。
转载请注明原文地址:https://jikaoti.com/ti/NuL0FFFM
0

相关试题推荐
最新回复(0)