c++ - vector::push_back 与 vector::operator[]

标签 c++ stl vector operator-keyword push-back

c++程序中,

include<iostream>
#include<vector>
using namespace std;

int main()
{
     vector<int> numbers;

    numbers.push_back(2);
    numbers.push_back(10);
    numbers.push_back(5);
    numbers.push_back(3);
    numbers.push_back(7);

    numbers[3] = 8;
    numbers[5] = 11;

    for(int i=0; i<numbers.size(); ++i)
    {
            cout<<" "<<numbers[i];
    }
}    

查看ideone .

此处,numbers[3] 正常,但 numbers[5]
看起来,vector::operator[] 不会像 vector::push_back 那样增加 vector 的大小。
所以,这是两者之间的唯一区别还是其他东西

最佳答案

std::vector::operator[] : "访问指定元素"

std::vector::push_back : "在末尾添加一个元素"

我非常擅长查看 C++ 引用资料。你应该试试看。

关于c++ - vector::push_back 与 vector::operator[],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11007054/

相关文章:

c++ - std::array 使用大括号复制构造

c++ - 我可以重载 CArchive << 运算符以使用 std::string 吗?

c++ - 我如何知道一个 STL 对象占用了多少内存?

c++ - 来自 std::vector 的 pop-push 元素并重用元素

c++ - 我如何错误地使用 vector 迭代器?

c++ - 跟踪交换和比较

c++ - 如何让 std::pair<char *, char *> 在 Visual Studio 的调试器中显示为正确的字符串段?

r - 复制R中的向量

c++ - 我可以将 unsigned char 转换为 char ,反之亦然吗?

c++ - 多重删除