【发布时间】:2014-11-05 22:52:22
【问题描述】:
我需要在每对长度 n 中用 (false,false) 初始化一个对向量。
类似这样,但正确:
vector<pair<bool,bool> > hm(n,(false,false));
【问题讨论】:
-
它是用 Java 编写的吗?请包括您选择的语言!
-
在我看来像 C++。
我需要在每对长度 n 中用 (false,false) 初始化一个对向量。
类似这样,但正确:
vector<pair<bool,bool> > hm(n,(false,false));
【问题讨论】:
std::pair 值初始化其成员,这意味着默认构造会将两个成员都设置为false。所以这将产生预期的效果:
vector<pair<bool,bool>> hm(n);
【讨论】:
在一行中初始化一个包含 n 对的向量,如下所示:
std::vector<std::pair<bool, bool> > hm{n, {false, false}};
【讨论】:
{ 而不是( :)
C++03 兼容答案:
std::vector<std::pair<bool,bool> > hm(n, std::make_pair(false, false));
【讨论】: