C++的vector用hash_map初始化?

voidfoo(hash_map<uint,double>&re){vector<pair<uint,double>>vec(re.begin(),re.end());v... void foo(hash_map<uint, double> &re)
{
vector<pair<uint, double> > vec(re.begin(), re.end());
vector<pair<uint, double> > vec(re.begin(), re.end());
这句话是什么意思?
没见到过这种变量声明方式啊。。。
展开
 我来答
真白的纱雾d442c
2010-01-27 · TA获得超过1093个赞
知道小有建树答主
回答量:265
采纳率:0%
帮助的人:533万
展开全部
首先,
vector<pair<unit, double> > vec
声明了一个vector,其元素的类型是pair<uint, double>,这与hash_map<uint, double>的元素类型一致,都是uint到double的一对映射。
然后,
(re.begin(), re.end())
用两个迭代器来初始化刚声明的vector,初始化方式是遍历从re.begin()到re.end()之间的所有元素并加入vector中。
所以实际上的作用是将re中的所有元素放入vec中。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式