Questions tagged «container-data-type»

9
为什么不能建立参考向量?
当我这样做时: std::vector<int> hello; 一切正常。但是,当我将其设为参考向量时: std::vector<int &> hello; 我收到可怕的错误,例如 错误C2528:“指针”:指向引用的指针不合法 我想将一堆对结构的引用放到一个向量中,这样我就不必插手指针了。为什么vector对此大发脾气?我唯一的选择是使用指针向量吗?

7
为什么在C ++ 11中使用非成员的begin和end函数?
每个标准容器都有一个beginand end方法,用于返回该容器的迭代器。但是,C ++ 11显然引入了称为std::begin和的自由函数,std::end它们调用begin和end成员函数。所以,不用写 auto i = v.begin(); auto e = v.end(); 你会写 auto i = std::begin(v); auto e = std::end(v); Herb Sutter 在他的写现代C ++的演讲中说,当您想要容器的开始或结束迭代器时,应该始终使用自由函数。但是,他没有详细说明您为什么要这么做。查看代码,可以节省一个字符。因此,就标准容器而言,自由功能似乎完全没有用。赫伯·萨特(Herb Sutter)表示,使用非标准容器也有好处,但是他没有详细介绍。 那么,问题到底是什么做的免费功能的版本std::begin,并std::end做超出调用它们相应的成员函数的版本,你为什么要使用它们?

10
在哪种情况下我应该使用特定的STL容器?
在C ++的书中,我一直在阅读STL容器,特别是有关STL及其容器的部分。现在,我确实了解它们中的每一个都有它们自己的特定属性,并且我几乎要记住它们的所有属性……但是我还不了解的是,在每种情况下都使用它们。 有什么解释?首选示例代码。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.