スコープ解決演算子: ::
スコープ解決演算子のコンパイラ :: と識別子を前に付けることによりローカル識別子ではなくグローバル識別子を使用するように指定できます。
:: identifier
class-name :: identifier
namespace :: identifier
解説
識別子は 変数または関数のいずれかです。
ローカル スコープ入れ子になったスコープ解決演算子は次の最も外側のスコープ識別子にはアクセスできません。これはグローバル識別子にのみアクセスを提供します。
使用例
この例で amount という 2 種類の変数があります。1 番目のはグローバルで値 123 が含まれます。2 番目の main 関数に対してローカルです。スコープ解決演算子はコンパイラでローカルの例ではなくグローバル amount を使用するように指定します。
// expre_ScopeResolutionOperator.cpp
// compile with: /EHsc
// Demonstrate scope resolution operator
#include <iostream>
using namespace std;
int amount = 123; // A global variable
int main() {
int amount = 456; // A local variable
cout << ::amount << endl // Print the global variable
<< amount << endl; // Print the local variable
}