为什么c++的作用域解析操作符是::

Why is the C++ scope resolution operator ::?

本文关键字:操作符 作用域解析 c++ 为什么      更新时间:2023-10-16

这是我在Stroustroup的《c++的设计与发展》中没有找到答案的几个问题之一。为什么c++范围解析操作符是::而不是:?

我猜这是因为:已经被用来指示构造函数中初始化列表的开始。还有人同意,不同意,或者对此有明确的答案吗?

这将与goto标签产生歧义,例如。

foo:bar;  // is foo a label or a namespace?