我可以继承std :: string以便添加一些额外的成员/标志吗?

时间:2019-10-08 05:59:50

标签: c++ stl polymorphism

我具有以下结构:

struct A {
  std::string data;
  bool flag;
};

在大多数情况下,我希望班级的用户能够像字符串一样使用它。这意味着==运算符,迭代器,[]索引等等。我必须为此编写一堆委托方法。但是我可以这样做:

struct A : std::string {
  using std::string::string; // Bring in all constructors.
  bool flag;
};

这有什么缺点吗?

0 个答案:

没有答案