c++中如何返回父类对象
时间: 2024-03-20 11:40:24 浏览: 105
在C++中子类继承和调用父类的构造函数方法
5星 · 资源好评率100%
在 C++ 中,如果一个子类继承自一个父类,那么在子类中可以通过调用父类的构造函数来创建一个父类对象并返回。以下是一个简单的示例:
```cpp
#include <iostream>
using namespace std;
class Parent {
protected:
string name;
public:
Parent(string name) : name(name) {}
string get_name() { return name; }
};
class Child : public Parent {
private:
int age;
public:
Child(string name, int age) : Parent(name), age(age) {}
Parent get_parent() { return Parent(name); }
};
int main() {
Parent parent("John");
Child child("Jane", 5);
// 调用子类中的方法
cout << child.get_name() << endl; // 输出: Jane
cout << child.age << endl; // 输出: 5
// 调用父类的方法
cout << child.get_parent().get_name() << endl; // 输出: John
return 0;
}
```
在上面的代码中,`Child` 类继承自 `Parent` 类。`Child` 类实现了一个 `get_parent` 方法,该方法返回一个 `Parent` 类型的对象,该对象的名称属性与子类对象相同。通过调用 `get_parent` 方法,我们可以获得一个父类对象,然后调用该对象的方法。在 `Child` 类的构造函数中,我们调用了父类构造函数来初始化父类的属性。在 `get_parent` 方法中,我们创建了一个父类对象并返回它。
阅读全文