继承自std :: vector

时间:2013-04-24 09:15:43

标签: c++

这里有很多答案说不要从std :: vector继承,例如this question。我理解原因并同意他们。但是在here第4.4.1.2节中,Bjarne Stroustrup自己继承自std :: vector以添加范围检查。

这是一个特例,还是只是在那种情况下可以做的事情或他真正不应该做的事情:P

1 个答案:

答案 0 :(得分:3)

我认为this answer完全回答了你的问题。

继承std::vector并非不可能,它可能会非常有限(由于没有虚拟析构函数),对其他人来说相当混乱,并且通过组合扩展比继承更好/更容易/更易于维护。

也许Stroustrup只是想表明它是可行的,但并不一定暗示他暗示它。