@totsamiyya

Зачем ставить фигурные скобки после вызова метода?

Например, есть класс MyClass, в нём есть метод int myMethod.
При вызове из другого метода другого класса используется такая конструкция:
MyClass::myMethod();
{
    ...
    различные операции
    ...
}

Или, например, ситуация, когда ставят фигурные скобки после инициализации переменной:
int var = 0;
{
    ...
}

Встречал такие конструкции в разных примерах и не очень понимаю, как такое работает.
  • Вопрос задан
  • 1132 просмотра
Решения вопроса 1
sfi0zy
@sfi0zy
Creative frontend developer
Фигурные скобки создают новый блок со своей областью видимости (к последнему выражению это отношения не имеет):
int A = 0;

{
    int A = 1;
    int B = 1;
    std::cout << A << "\n"; // 1
    std::cout << B << "\n"; // 1
}
  
std::cout << A << "\n"; // 0
//std::cout << B << "\n"; // <-- error: B was not declared in this scope
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@GreatRash
Я полный ноль в плюсах, поэтому могу лишь предположить, что это как-то связано с областью видимости переменных. Например какие-то переменные недоступны извне такого блока. Или например внутри блока можно делать что хочешь с переменной var, но снаружи она всё равно будет равна нулю.

Ну по крайней мере это было бы логично.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы