更多“( 15 )请将下列模板类 Data 补充完整。template <typename T>class Data{public:void put ( ”相关问题
  • 第1题:

    下列程序的运行结果是【 】。 include class SomeClass { public: SomeClass(int va

    下列程序的运行结果是【 】。

    include <iostream. h>

    class SomeClass

    {

    public:

    SomeClass(int value) { some_value=value;};

    void show_data(void) { cout<<data<<"<<~some_value<<endl; };

    static void set_data(int value) {data=value; }

    private:

    static int data;

    int some_value

    };

    int SomeClass::data

    void main(void)

    {

    SomeClass my_class(1001),your_class(2002);

    your_class. set_data(4004);

    my_elass. show_data()

    }


    正确答案:4004 1001
    4004 1001 解析:本题考查静态成员变量在不同对象间的共享现象。无论哪个对象修改了其静态变量的值,其他对象再访问该变量时已经发生了变化。

  • 第2题:

    有如下类定义,请将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类名&引用对象名){复制构造函数体)。而在类中的声明部分可省去“类名::”。

  • 第3题:

    有如下类定义,请将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类名&引用对象名){复制构造函数体)。而在类中的声明部分可省去“类名::”。

  • 第4题:

    请将下列程序的横线处补充完整,使得输出结果为bbaaincludeusing namespace std;class

    请将下列程序的横线处补充完整,使得输出结果为bbaa

    include<iostream>

    using namespace std;

    class A{

    public:

    ______{cout<<"aa";}

    };

    class B:public A{

    public:

    ~B(){cout<<"bb";}

    };

    int main(){

    B*p=new


    正确答案:~A()
    ~A() 解析: 此题考查的是类的构造与析构。本题要求输出的结果中包含aa,所以基类A中横线处的函数一定要被执行。横线处应是定义基类的构造或者析构函数,如果定义的是构造,那么aa肯定在new操作时就输出,而下面的bb是在析构函数中,会在delete时被输出。故可以肯定应填入基类A的析构函数定义:~A()。

  • 第5题:

    下列事件过程的功能是:建立一个名为Datal的随机文件,存放角度值及这些角度的正弦函数值和余弦函数值,角度为1,2,3,…,90。请在空白处填入适当的内容,将程序补充完整。 Private Type Ang K As Integer Sinx As Single Cosx As Single End Type Dim Ksc As Ang Private Sub Form_Click() Dim Y As Single Dim i As Integer Dim

    A...\Data1.txtFor Random As #1 Len=10 Put #1,i,Ksc

    B...\Data1.txtFor Random As #1 Len=10 Put #1,Y,Ksc

    C...\Data1.txtFor Random As #1 Put #1,i,Ksc

    D...\Data1.txtFor Random As #1 Put #1,Y,Ksc


    正确答案:A
    解析: 分析程序,程序要将角度值及这些角度的正弦函数值和余弦函数值存入Datal文件中。因此,应先打开Datal文件,应为Datal文件是随机文件,要新建并写入信息,所以应用Random方式打开文件。这里给随机文件指定长度为10,所以第1个空白处应填:"..\Dam1.txt"For Random As#1 Len=10。要向随机文件中写入信息,应用Put语句,因此第2空应填:Put#1,i,Ksc。