C ++命名空间外的定义

时间:2018-07-19 10:10:24

标签: c++ namespaces name-lookup

this网站上,有以下段落:

  

只有在声明之后,才可以在名称空间范围内,并且仅在包含原始名称空间(包括全局名称空间)[]的名称空间中使用超出名称空间的定义和重新声明,并且它们必须使用合格的- id语法(自C ++ 14起)]

我使用[]来分隔(since C++14)构造所引用的部分。

我的问题是,如果不必使用qualified-id syntax,在C ++ 14之前如何进行命名空间外的定义?

我查看了C ++ 11标准草案,发现以下内容:

  

也可以通过显式限定(3.4.3.2)在该命名空间之外定义命名命名空间的成员。   定义的名称的名称,前提是所定义的实体已在名称空间中声明   并且定义出现在声明点之后的命名空间中,该命名空间将声明的   命名空间。 [...]

qualified-id syntaxexplicit qualification之间有区别吗?

谢谢。

0 个答案:

没有答案