我正在研究一个我正在使用的 API 的实现。
I noticed that a struct is inheriting from a class and I paused to ponder on it...
First, I didn't see in the C++ manual I studied with that a struct could inherit from another struct:
struct A {};
struct B : public A {};
我想在这种情况下,struct B 继承自 stuct A 中的所有数据,我们可以在 struct 中声明 public/private 成员吗?
但我注意到:
class A {};
struct B : public A {};
来自我的在线 C + + 手册:
类是数据结构的扩展概念: 它不仅可以保存数据,还可以保存 都有数据 and functions.
即使类 A 有一些成员函数,上述继承是否有效?当结构继承这些函数时,它们会发生什么变化?那么反过来呢: 从结构继承的类呢?
实际上,我有这个:
struct user_messages {
std::list<std::string> messages;
};
我过去常常像这个 foreach message in user_messages.messages
一样迭代它。
如果我想将成员函数添加到结构中,我是否可以更改它的声明并将其“提升”为类,添加函数,同时仍然在 user _ message 上迭代。像我以前那样?
显然,我仍然是一个新手,我仍然不清楚结构和类是如何相互作用的,两者之间的实际差异是什么,以及继承规则是什么..。