解释std :: vector <int>(tSet.begin(),tSet.end())</int>

时间:2014-05-11 23:50:24

标签: c++

在此SO answer中有以下一行:

std::vector<int>(tSet.begin(), tSet.end()).swap(tUserNumbers);

有人可以解释.swap之前部分的语法吗?我有什么名字可以查找吗?

1 个答案:

答案 0 :(得分:3)

std::vector<int>(tSet.begin(), tSet.end())
//                          ^ iterator to begin of data range
// tSet.end() is iterator to end of data range

通过复制名为std::vector<int>

的容器来创建类型为tSet的临时变量
  

有没有可以查找的名字?

查看this decription of vector constructors

特别是在构造函数(4)中:

template< class InputIt >
vector( InputIt first, InputIt last, 
        const Allocator& alloc = Allocator() );

有时也称为范围构造函数。