2016-06-30 73 views
0

以下代碼在C++中有何含義?前面的對象聲明::在C++中

::SomeNameSpace::SomeClass abc; 

基本上是如何從

SomeNameSpace::SomeClass abc; 
+4

這就像「巴黎」和「法國巴黎」之間的區別。通常情況下,除非你是德克薩斯人,否則一樣。 –

+0

@KerrekSB:不是真的,因爲根據定義,「:: Paris」不能與「France :: Paris」相同。 –

+0

那麼好吧,它本來可以'使用''... –

回答

2

此不同的操作者::範圍算子;它表示一些具體的範圍。如果沒有前綴,則表示全局範圍。

因此,如果SomeNameSpace在全球範圍內,那麼::SomeNameSpaceSomeNameSpace是相同的。所不同的是,如果您處於非全局範圍並使用SomeNameSpace,因爲它首先在當前範圍內查找。