下列类的构造函数不能通过编译,正确的构造函数应该是______。 #include<iostream.h> class Sample { public: int n; const int con;

admin2013-02-27  31

问题 下列类的构造函数不能通过编译,正确的构造函数应该是______。
   #include<iostream.h>
   class Sample
   {
   public:
       int n;
       const int con;
       Sample(int m) {con=m+1;n=m;}
       void disp( ) {cout<<"normal:n="<<n<<endl;}
       void disp( )const {cout<<"static:n="<<n<<endl;}
   };
   void main( )
   {
       const Sample a (12);
       Sample b (13);
       a.disp( );
       b.isp( );
       cout<<a.n<<","<<b.con<<endl;
   }

选项

答案Sample(int m):con(m+1){n=m;)

解析 本题考察常数据成员的初始化方法。常数据成员的定义必须出现在类体中,而且初始化只能通过构造函数的成员初始化列表进行,而且不能被更新。
转载请注明原文地址:https://kaotiyun.com/show/3dVp777K
0

最新回复(0)