这里有很多回答说不要继承std::vector等类,例如这个问题。我理解其中的原因并且同意。然而,在这里的第4.4.1.2节中,Bjarne Stroustrup本人继承std::vector以添加范围检查。那是一个特殊情况,还是只在那种情况下可以这样做,或者他真的不应该这样做:P
我认为这个答案完美地回答了你的问题。 从std::vector继承并不是不可能的,但由于没有虚析构函数,它可能会受到很大限制,对其他人来说也相当困惑。通过组合进行扩展比继承更好、更容易维护。 也许Stroustrup只是想表明它是可行的,而不一定意味着他建议这样做。