✏️ 纠错
第 178 题 / 共 226 题
第2 题 2为了让Dog 类的构造函数能正确地调用其父类Animal 的构造方法,横线线处应填入( )。
#include <iostream>
#include <string>
using namespace std;
class Animal {
public:
std::string name;
Animal(std::string str) : name(str) {
std::cout << "Animal created\n";
}
virtual void speak() {
cout << "Animal speaks" << endl;
}
};
class Dog : public Animal {
std::string breed;
public:
Dog(std::string name, std::string b) : __________________, breed(b) {
std::cout << "Dog created\n";
}
void speak() override {
cout << "Dog barks" << endl;
}
};
int main() {
Animal* p = new Dog("Rex", "Labrador");
p->speak();
delete p;
return 0;
}你真棒!
📝 题目解析
【答案】A
【考纲知识点】类的创建知识
【详细解析】Animal是父类,父类的构造函数里有参数,子类调用的过程中需要传参。C++中没有super关键字。