我目前正在学习 C++ 并试图习惯它附带的标准数据结构,但它们看起来都很简单。例如,list 没有像我在 Java 中习惯的 get(index) 这样的简单访问器。pop_back 和 pop_front 等方法也不返回列表中的对象。因此,您必须执行以下操作:
Object blah = myList.back();
myList.pop_back();
而不是像这样简单的东西:
Object blah = myList.pop_back();
在 Java 中,几乎每个数据结构都会返回对象,因此您不必进行这些额外的调用。为什么 C++ 的 STL 容器是这样设计的?我在 Java 中执行的此类常见操作对于 C++ 来说不是很常见吗?
编辑:对不起,我想我的问题措辞很糟糕,无法获得所有这些反对意见,但肯定有人可以编辑它。为了澄清,我想知道为什么 STL 数据结构与 Java 相比是这样创建的。还是我一开始就使用了错误的数据结构集?我的观点是,这些看起来像是您可能在(在我的示例中)列表上使用的常见操作,并且每个人肯定不想每次都编写自己的实现。
编辑:将问题改写为更清楚。