首页 > 试题广场 >

以下哪项描述是正确的

[不定项选择题]

以下哪项描述是正确的

  • 父类的构造函数与析构函数不会自动被调用
  • 成员变量需要用public protected private修饰,在定义变量时不再需要var关键字
  • 父类中定义的静态成员,不可以在子类中直接调用
  • 包含抽象方法的类必须为抽象类,抽象类不能被实例化
我选的BD
发表于 2017-09-27 10:47:55 回复(0)
A应该是错的,父类构造函数是可以被自动调用的。也可以在子类构造函数里面显示调用。
发表于 2017-11-30 09:55:25 回复(0)
A是错的,如果要使用父类的默认构造函数,会自动调用,只有在子类构造函数中需要用参数化列表方式将父类信息传递给父类构造函数时才会显式调用父类拷贝构造函数。析构函数是自动调用的,先调用子类析构,再调用父类析构
发表于 2017-08-18 10:44:26 回复(0)
var属于c++内容吗??
发表于 2021-08-17 14:02:35 回复(0)

c++中父类的静态成员变量/函数在子类中的使用时,子类是可以共享父类中静态成员变量/函数的

当然有一个前提,父类中的静态成员函数/变量应该为公有的(pulic),或当为private时,应提供公有的接口函数来调用

发表于 2020-06-30 01:08:27 回复(0)
那C++怎么还出来个var呢
发表于 2022-08-02 14:18:32 回复(0)
class Base {
public:
    Base() { cout << "Base\n"; }
    ~Base() { cout << "~Base\n"; }
    static void printBase() { cout << "print Base\n"; }
};

class Derived : public Base {
public:
    Derived() { cout << "Derived\n"; }
    ~Derived() { cout << "~Derived\n"; }
    void printDerived() {
        // 调用父类的静态成员
        Base::printBase();
        cout << "print Derived\n";
    }
};

int main(int argc, char const* argv[]) {
    Derived d;
    d.printDerived();
    return 0;
}

/*
输出:
Base
Derived
print Base
print Derived
~Derived
~Base
*/

A:父类的构造函数和析构函数是会被自动调用的

B:这个选项在百度搜了一下,似乎是php的题目,如果不使用public、private、protected等关键字修饰方法或属性,那么可以使用var关键字,它的功能等同于public,可以在类内或类外被调用,也可以被继承使用。var就是public的别名,是用在类中定义公有属性的(来源于网络)

C:父类中定义的静态成员在子类中可以使用父类名直接调用父类名::成员名;

D:只要类中包含抽象方法,这个类就是抽象类,抽象类是不能被实例化的

发表于 2022-03-06 10:00:04 回复(0)
var关键字啥意思

发表于 2020-12-12 16:42:08 回复(1)
抽象类:就是包含有未定义的虚函数的类,比如 虚函数定义为virtual void f()=0;这样的形式。
所以派生类必须实现这个函数,如果派生类没有实现这个函数,则这个派生类也是抽象的。
下面一个例子

class A
{
public: 
    virtual void f()=0;
};  //声明一个抽象类

class B: public A
{
public: 
    void f(){cout<<"B"<<endl;};
}
void main()
{
    A test; //错误不能这么写,因为类A是抽象类,含有未实现的函数f()。因此不能创建对象
   B test;    //子类可以被创建对象,因为有实现虚函数f
    A *p=&test; //可以创建抽象类的指针指向派生类对象。
}


发表于 2020-09-28 18:06:58 回复(0)
如果基类定义了一个静态数据成员A,派生类不会创建第二个A的实例,所有的派生类对象都引用这个相同的,单一的,共享的静态成员。不论从基类派生了多少类A只存在一个实例,可以通过派生类对象用成员访问语法来访问他。(@lidanny

发表于 2018-12-02 09:43:22 回复(0)
迷……
发表于 2022-02-07 19:28:47 回复(0)