继承是面向对象编程中的一个重要概念,它允许一个类(子类)继承另一个类(父类)的属性和方法,在C++中,继承分为公有继承、私有继承和保护继承三种类型。
1、公有继承
公有继承是指子类可以访问父类的公有成员(public)和保护成员(protected),但不能访问私有成员(private),子类可以使用父类的公有成员和方法,也可以对其进行扩展或修改。
2、私有继承
私有继承是指子类可以访问父类的公有成员和保护成员,但不能访问私有成员,子类可以使用父类的公有成员和方法,但继承后,父类的公有成员和保护成员在子类中变为私有成员。
3、保护继承
保护继承是指子类可以访问父类的公有成员和保护成员,但不能访问私有成员,与私有继承不同的是,保护继承后,父类的公有成员和保护成员在子类中仍然保持为公有成员和保护成员。
以下是一个简单的C++继承示例:
#includeusing namespace std; // 基类(父类) class Animal { public: void eat() { cout << "Animal is eating." << endl; } }; // 派生类(子类) class Dog : public Animal { // 公有继承 public: void bark() { cout << "Dog is barking." << endl; } }; int main() { Dog dog; dog.eat(); // 调用父类的公有方法 dog.bark(); // 调用子类的方法 return 0; }
在这个示例中,Dog
类继承了Animal
类,它们之间使用了公有继承。Dog
类可以访问Animal
类的公有方法eat()
,并在此基础上添加了自己的方法bark()
。
上一篇:为什么没有好友通知功能