【问题标题】:What does these extra arguments mean? [closed]这些额外的论点是什么意思? [关闭]
【发布时间】:2012-11-30 07:01:59
【问题描述】:

这些额外的参数是什么意思,就像在这里

int data[num];
vector<int> v;
// ...
v.insert(v.begin(),data, data+num);

为什么有两个以上的参数?请详细说明其作用。

【问题讨论】:

标签: c++ stl vector


【解决方案1】:

vector::insert 有一个重载,它在该向量中占据一个位置,并在该位置之前插入一系列元素:

template< class InputIt >
void insert( iterator pos, InputIt first, InputIt last);
template< class InputIt >
iterator insert( const_iterator pos, InputIt first, InputIt last );

在您的情况下,您将 data 数组中的全部内容插入向量的开头(data 衰减为指向第一个元素的指针,data + num 指向数组末尾的一个点) .

【讨论】:

    猜你喜欢
    • 2012-10-29
    • 2013-02-18
    • 2016-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-24
    • 1970-01-01
    相关资源
    最近更新 更多