参考答案和解析
正确答案:
更多“( 11 )有如下类定义:class Sample{public:Sample();~Sample();Private:Static int date;};将静态 ”相关问题
  • 第1题:

    在下面的类定义中,错误的语句是( )。 class Sample { public: Sample(int val): //① ~Sample(); //② private: int a=2.5; //③ Sample(): //④ };

    A.①②③④

    B.②

    C.③

    D.①②③


    正确答案:C

  • 第2题:

    有如下类定义:

    class Sample{

    public:

    Sample();

    ~Sample();

    private:

    static int data;

    };

    将静态数据成员data初始化为0的语句是【 】。


    正确答案:Sample::data=0;
    Sample::data=0; 解析:将静态数据成员data初始化为0的语句是“Sample::data=0;”,因为Sample是一个公共类,可以这样进行初始化。

  • 第3题:

    19. 在下面的类定义中,错误的语句是()。 class sample{ public: sample(int val); //① ~sample(); //② private: int a=2.5; //③ public: sample(); //④ };

    A.①

    B.②

    C.③

    D.④


    类定义完成后系统为其分配相应的内存空间

  • 第4题:

    有如下类定义,请将Sample类的拷贝构造函数补充完整。

    class Sample{

    public:

    Sample(){)

    ~Sample(){if(p)delete p;)

    Sample(const Sample& s){

    ______

    }

    void SetData(int data) {p=new int(data);}

    private:

    int*p;

    };


    正确答案:p=new int; p=s.p;
    p=new int; p=s.p; 解析:此题考查的是复制构造函数。复制构造函数定义的一般格式如下:类名::类名(const类名&引用对象名){复制构造函数体)。而在类中的声明部分可省去“类名::”。

  • 第5题:

    有如下类定义,请将Sample类的拷贝构造函数补充完整。 class Sample { public: Sample(){} ~Sample(){if(p)delete p;} Sample(const Sample&s){ p=new int; *p=___________; } void SetData(int data) {p=new int(data);} void print(){cout<<*p<<endl;} private: int*p; };


    p=new int;p=s.p; p=new int;p=s.p; 解析:此题考查的是复制构造函数。复制构造函数定义的一般格式如下:类名::类名(const类名&引用对象名){复制构造函数体)。而在类中的声明部分可省去“类名::”。