itgle.com

下列类定义中包含了构造函数和拷贝构造函数的原型声明,请在横线处填写正确的内容,使拷贝构造函数的声明完整。class myClass{private:int data;public:myClass(int value);//构造函数myClass(const______another Object);//拷贝构造函数}

题目

下列类定义中包含了构造函数和拷贝构造函数的原型声明,请在横线处填写正确的内容,使拷贝构造函数的声明完整。

class myClass{

private:

int data;

public:

myClass(int value);//构造函数

myClass(const______another Object);//拷贝构造函数

}


相似考题
参考答案和解析
正确答案:myClass&
myClass& 解析:此题考查的是复制构造函数。复制构造函数定义的一般格式如下:类名::类名(const类名&引用对象名){复制构造函数体)。而在类中的声明部分可省去“类名::”。
更多“下列类定义中包含了构造函数和拷贝构造函数的原型声明,请在横线处填写正确的内容,使拷贝构造函数 ”相关问题
  • 第1题:

    对于一个类定义,下列叙述中错误的是( )。

    A.如果没有定义拷贝构造函数,编译器将生成一个拷贝构造函数

    B.如果没有定义缺省的构造函数,编译器一定将生成一个缺省的构造函数

    C.如果没有定义构造函数,编译器将生成一个缺省的构造函数和一个拷贝构造函数

    D.如果已经定义了构造函数和拷贝构造函数,编译器不会生成任何构造函数


    正确答案:B
    本题考查构造函数和复制构造函数,如果没有定义构造函数,编译器将生成一个缺省的构造函数和一个拷贝构造函数,如果已经定义了构造函数和拷贝构造函数,编译器不会生成任何构造函数。如果没有定义拷贝构造函数,编泽器将生成一个拷贝构造函数。

  • 第2题:

    如下类定义中包含了构造函数和拷贝构造函数的原型声明,请在横线处填写正确的内容,使拷贝构造函数的声明完整。

    Class myClass{

    private:

    int data;

    public:

    myClass(int value);//构造函数

    myClass(const【 】anotherObject);//拷贝构造函数

    }


    正确答案:myClass&
    myClass& 解析:本题考查的知识点是:拷贝构造函数。拷贝构造函数定义的一般格式如下:
    类名>::类名)(const类名>&引用对象名>)
    {
    //拷贝构造函数体
    }
    而在类中的声明部分则可省去类名>::。故本题应该填myClass&。

  • 第3题:

    下列关于深拷贝和浅拷贝说法正确的是?

    A.C++类没有默认的拷贝构造函数,只有默认的构造函数和析构函数。

    B.C++的默认拷贝构造函数是浅拷贝构造函数。

    C.拷贝构造函数一定在对象创建时被调用。

    D.默认拷贝构造函数也可以是深拷贝构造函数。


    C++ 的默认拷贝构造函数是浅拷贝构造函数。

  • 第4题:

    关于拷贝初始化构造函数,正确的是( )。

    A.在C++语言中,如果不自定义类的拷贝初始化构造函数,则每个类都有默认的拷贝初始化构造函数

    B.必须为每个类定义拷贝初始化构造函数

    C.如果要使用拷贝初始化构造函数,则必须在类中先定义

    D.当定义了类的构造函数时,如果要使用拷贝初始化构造函数,则必须定义拷贝初始化构造函数


    正确答案:A
    解析: 拷贝构造函数是一个特殊的构造函数,它用一个已知的对象初始化一个正在创建的同类对象,它不能指定函数返回类型:只有一个参数,是同类的某个对象名的引用。每一个类中都必须有一个拷贝构造函数,如果类中未声明,编译器会自动生成一个公有的拷贝构造函数。

  • 第5题:

    对于一个类定义,下列叙述中错误的是( )。

    A.如果没有定义拷贝构造函数,编译器将生成一个拷贝构造函数

    B.如果没有定义缺省的构造函数,编译器将一定生成一个缺省的构造函数

    C.如果没有定义构造函数,编译器将生成一个缺省的构造函数和一个拷贝构造函数

    D.如果已经定义了构造函数和拷贝构造函数,编译器不会生成任何构造函数


    正确答案:B