首页 > 解决方案 > 为什么 C++ 没有简洁的语法允许在不定义计数器的情况下多次执行操作?

问题描述

我想多次执行单个操作,而不定义计数器。例如,像这样:

do(10)
{
    //do something
}

我认为这在几种不同的情况下很有用。例如:

其他语言有类似的语法,允许重复执行相同的命令,而不必显式定义计数器变量。在我看来,定义计数器与人类思维完全不一致。

模拟我们的想法:</p>

实际上,我们总是在做某事。直接几次。

但现在语法看起来像这样:

灵魂拷问:为什么C++不提供简洁的语法?虽然我是 C++ 的粉丝,但我不禁想为什么有些人不喜欢 C++,因为 C++ 很少考虑人们的想法。我希望 C++ 能够与时俱进,成为未来的编程语言。

不同于Modern C++重复代码设定次数的方式。我给出了我的计划、应用场景,甚至情感诉求。

标签: c++c++11c++17

解决方案


C++ 的发展是由委员会决定的。用最简单的话说,人们提出的东西,委员会接受或拒绝它。

有趣的是你的建议

do (integral_expression)
{
}

不会是一个突破性的变化。请注意,while在循环体之后或while相邻的do. 在块标签的情况下,这几乎integral_expression是C++ 中的生产规则,尽管在这种情况下它可以是运行时可评估的。它甚至可以用来清理代码,相当于switch

for (int i = 0; i < integral_expression; ++i)
{
}

引入i到循环体中可能会带来不便,因为它会影响现有的i.

也就是说,需要考虑积分表达式为负的情况。在标准 C++ 的合理通用扩展中声明可变长度数组时,也许引入unsigned_integral_expression与需要编写为大小表达式的内容没有什么不同?

如果你想要 C++ 中的这个特性,那为什么不提出呢?


推荐阅读