7-4 类的继承与派生
时间: 2024-02-12 09:02:24 浏览: 83
类的继承是指在定义一个新的类时,可以基于已有的一个或多个类创建一个新的类,新类将继承原有类的属性和方法,同时可以添加新的属性和方法。
派生是指从一个已有的类派生出一个新的类,新类可以包含原有类的所有成员,也可以添加新的成员。在派生过程中,新类可以重载或覆盖原有类的成员。
在C++中,可以使用关键字“class”或“struct”来定义一个类。定义一个派生类时,需要使用关键字“class”或“struct”,加上冒号“:”,然后指定基类的名称。例如:
```c++
class baseClass{
public:
int baseMember;
};
class derivedClass : public baseClass{
public:
int derivedMember;
};
```
在上面的例子中,`derivedClass`是从`baseClass`派生而来的。`derivedClass`包含了`baseClass`的`baseMember`成员和自己的`derivedMember`成员。`public`关键字表示`derivedClass`继承了`baseClass`的公有成员。
在派生类中,可以使用`virtual`关键字来声明虚函数,从而实现多态性。
```c++
class baseClass{
public:
virtual void virtualFunction(){
cout << "This is the virtual function in baseClass." << endl;
}
};
class derivedClass : public baseClass{
public:
void virtualFunction(){
cout << "This is the virtual function in derivedClass." << endl;
}
};
```
在上面的例子中,`baseClass`定义了一个虚函数`virtualFunction`,并且在`derivedClass`中重载了这个函数。当调用`virtualFunction`时,如果对象是`baseClass`类型,则调用`baseClass`中的函数;如果对象是`derivedClass`类型,则调用`derivedClass`中的函数。这就是多态性的实现。
阅读全文