Как правило, область действия заключена в фигурные скобки.Поэтому все в call_func имеет свою собственную область видимости, полностью отделенную от родительской функции.
Когда управление возвращается к родительской функции, объекты, которые находились в области видимости до вызова функции, все еще находятся в области видимости всего, что находится в скобках.
Дочерний метод имеет доступ только к объектам, которые находятся в родительском class .Объекты, определенные в родительском методе , доступны только в том случае, если они специально переданы (в качестве параметров) дочернему элементу.
class testClass
{
private int classLevelInt;
private void Main()
{
int methodLevelInt;
if (someTest)
{
int bracketLevelInt;
// classLevelInt, methodLevelInt and bracketLevelInt all in scope
ChildMethod();
// classLevelInt, methodLevelInt and bracketLevelInt all in scope
}
// only classLevelInt and methodLevelInt are still in scope
}
private void ChildMethod()
{
// This method can see classLevelInt only
// If access to other ints is required they must be passed to the method
}
}