我具有以下结构:
struct A {
std::string data;
bool flag;
};
在大多数情况下,我希望班级的用户能够像字符串一样使用它。这意味着==
运算符,迭代器,[]
索引等等。我必须为此编写一堆委托方法。但是我可以这样做:
struct A : std::string {
using std::string::string; // Bring in all constructors.
bool flag;
};
这有什么缺点吗?