【发布时间】:2018-09-02 00:43:09
【问题描述】:
我遇到过这种for循环布局:
#include <iostream>
int main()
{
{
for (int i = 0; i != 10; ++i)
{
std::cout << "delete i->second;" << std::endl;
}
}
{
for (size_t i = 0; i < 20; ++i)
{
std::cout << "delete m_indices[i];" << std::endl;
}
}
return 0;
}
我想知道这层额外的牙套是做什么用的?这在我们的代码库中出现了几次。
【问题讨论】:
-
在您发布的代码 sn-p 中它们完全是多余的
-
这段代码使用了哪些编译器?具体是 VS 6 被使用了吗?
-
@EdNorman 现在有了您的编辑,它变得更加清晰。似乎正确的答案是 UKMonkey 提供的答案。使用现代 C++ 编译器,您可以简单地删除花括号。
-
或者,它可以生成代码(叹了口气,刚刚开始接触 Rhapsody)
-
一个可能的原因是代码曾经有(或打算在将来有)OpenMP 并行指令。