有以下程序: #include 〈iostream〉 #include 〈string〉 using namespace std; class visited { private: int number;

admin2010-03-29  24

问题 有以下程序:    #include 〈iostream〉    #include 〈string〉    using namespace std;    class visited    {    private:       int number;       char  *name;    public:       static int glob;       void set mes(char *a);    };    void visited::set mes(char *a)    {       name=new char[strlen(A) +1];       strcpy(name,A) ;       number=++glob;    }    int visited::glob-O;    int main()    {       visited person[10];       int i;       char str[8];       for(i=0;i<5;i++)       {          cin>>str;          person .set mes(str);       }       cout<

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

答案1

解析 本题考核静态数据成员的应用。分析程序:
   ①类visited中,定义了两个私有成员:整型变量number和指针变量name。两个公有成员:静态数据变量glob和函数set mes()。
   ②在函数set mes中,把传入的字符串保存在类的私有成员name中,并把静态数据成员glob自加,同时赋值给私有成员number。
   通过以上分析可知,函数set mes()用来记录输入的名字(即来访者的姓名),静态数据变量glob用来记录有多少来访者。
   在主函数中,输入5个字符串(即5个来访者的姓名)后,用来记录来访者数目的静态数据成员glob的值变成5。所以程序最后的输出结果是5。
转载请注明原文地址:https://kaotiyun.com/show/oRjp777K
0

最新回复(0)