在C++中,没有内置的super
关键字来实现继承机制。C++使用class Derived : public Base
的形式来实现继承,其中Derived
是派生类,Base
是基类。在这种情况下,Derived
类继承了Base
类的所有成员(属性和方法)。
C++中的继承支持单继承和多继承。在单继承中,一个派生类只能继承一个基类。在多继承中,一个派生类可以继承多个基类。这里有一个简单的例子来说明C++中的继承:
#include <iostream>
// 基类
class Base {
public:
void print() {
std::cout << "Base class print function" << std::endl;
}
};
// 派生类
class Derived : public Base {
public:
void print() {
std::cout << "Derived class print function" << std::endl;
}
};
int main() {
Derived d;
d.print(); // 输出:Derived class print function
return 0;
}
在这个例子中,Derived
类继承了Base
类,并重写了print
方法。当我们创建一个Derived
类的对象并调用print
方法时,将执行Derived
类中的版本。
虽然C++没有super
关键字,但通过使用public
、protected
和private
继承修饰符,你可以控制基类成员在派生类中的访问权限。例如:
class DerivedProtected : protected Base {
public:
void print() {
Base::print(); // 访问基类的print方法
}
};
int main() {
DerivedProtected dp;
dp.print(); // 输出:Base class print function
return 0;
}
在这个例子中,DerivedProtected
类以受保护的方式继承了Base
类。这意味着Base
类的公有和保护成员在DerivedProtected
类中都成为受保护的成员。因此,我们可以在DerivedProtected
类中访问Base
类的print
方法。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。