21xrx.com
2024-09-20 00:17:30 Friday
登录
文章检索 我的文章 写文章
C++中struct如何继承class
2023-07-04 19:31:18 深夜i     --     --
C++ struct 继承 class

在C++中,我们经常使用class和struct来组织自己的代码,以便于更好地构建庞大的工程和项目。由于它们的语法和用法有很多共同点,我们在使用时可能会混淆它们的区别与细节。其中一个问题是,如何在struct中继承class?

在C++中,struct本质上是一个类,然而struct在定义时默认成员访问权限是public,而class是默认访问权限是private。因此,当我们使用struct来继承class时,继承的成员如果没有被显式的指定访问权限,仍然会被视作public访问权限。

下面我们来看一个例子,展示如何在struct中继承class:


class Person

public:

 string name;

 int age;

;

struct Student: public Person

 string school;

;

int main() " << stu.school << endl;

 return 0;

在这个例子中,我们通过使用关键字public来继承了class Person,并且在struct中增加了一个成员school。我们可以通过对象stu来访问Person和Student中的成员变量。

需要注意的是,当我们需要在struct中访问基类的成员时,可以直接使用成员名字,而不需要在前面加上类名。因此,我们在上述例子中可以用stu.name和stu.age来直接访问Person类中的成员。这与在class中访问基类成员的方式是相同的。

总之,在C++中,我们可以使用struct来继承一个class,使用public来指定继承方式,并且可以直接访问基类的公共成员。使用继承可以更好地组织我们的代码,并使代码更易于维护。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复