簡單的塊範圍
塊 { ... }
中變數的範圍在宣告之後開始,並在塊的結尾處結束。如果存在巢狀塊,則內部塊可以隱藏在外部塊中宣告的變數的範圍。
{
int x = 100;
// ^
// Scope of `x` begins here
//
} // <- Scope of `x` ends here
如果巢狀塊在外部塊中開始,則在外部類中具有相同名稱的新宣告變數將隱藏第一個。
{
int x = 100;
{
int x = 200;
std::cout << x; // <- Output is 200
}
std::cout << x; // <- Output is 100
}