对这些问题的答案这个问题意味着,在一个循环或“未知数据”是行不通的使用初始化列表。他们没有说为什么,或者怎么会失败。
IE,这样做:(这是一个无意义的操作,但是表明列表的内容会随着循环的进行而改变)
std::vector<float> vec;
// Assume vec is filled with some useful data
for(int i = 0; i < 10; i++)
{
for(int j = 0; j < 10; j++)
{
for(int k = 0; k < 10; k++)
{
result = std::max({vec[i], vec[j], vec[k]});
// do something with result...
}
}
}
我的代码使用初始化程序列表非常频繁地获取最多3个或更多元素。它看起来像一切正常,但我不知道他们是与否。
我想了解一下是否可行。如果不是,它将如何失败以及为什么。
我使用了非常多的警告,没有任何报告“警告:可能未正确使用初始化列表”或类似的警告。
该问题的答案表明,在循环中使用初始化列表或使用“未知数据”将不起作用。
由于省略了一个单词,这是对所说内容的误解。您正在谈论的陈述是对以下评论的回应:
如果数据是在循环中生成的,或者在运行时数据的数量发生了变化,您将如何进行这项工作?
重点已添加。所以当那个人说:
如果数据在运行时发生更改,则...
答复只是省略了“数字”部分,因为它是对先前评论的直接答复。
括号初始化列表可以包含任意数量的项目,但是列表中的项目数量必须在编译时定义。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句