C++ では、シャドウされた変数名のスコープ解決 (「優先順位」) は何ですか? オンラインで簡潔な答えを見つけることができないようです。
例えば:
#include <iostream>
int shadowed = 1;
struct Foo
{
Foo() : shadowed(2) {}
void bar(int shadowed = 3)
{
std::cout << shadowed << std::endl;
// What does this output?
{
int shadowed = 4;
std::cout << shadowed << std::endl;
// What does this output?
}
}
int shadowed;
};
int main()
{
Foo().bar();
}
変数が競合する可能性のある他のスコープは考えられません。見逃した場合はお知らせください。
メンバー関数shadow
内での 4 つの変数すべての優先順位は?bar