Урок 7. Составной оператор С++

Уроки для начинающих   18 февраля 2012  Автор статьи:  
geekbrains.ru/

Составной оператор служит для объединения нескольких операторов в один.
Данную конструкцию можно применять для выполнения нескольких действий в одном условии, то есть если вам требуется при соответствии условия заданным параметрам произвести сразу несколько вычислений.

int a=5,b=15;
if (b>a)
{
a=a+1;
b=b-2;
}
cout << a << " " << b;

Если объявить переменную внутри фигурных скобок, то вы сможете обращаться к ней только в данном блоке, то есть внутри этих же фигурных скобок.

int a=5;
if (7>a)
{
int b=15;
a=a+1;
b=b-2;
}
cout << a << " " << b;// ОШИБКА!

Ошибка произошла из-за того, что переменная b внутри блока, а обращение к ней идет после, то есть в рамках другого блока.


Составной оператор в Java

  • r04

    >>Если объявить переменную внутри фигурных скобок, то вы сможете
    обращаться к ней только в данном блоке, то есть внутри этих же фигурных
    скобок.
    тут нужно вспомнить термин «область видимости». Пример можно чуть дополнить этим:

    int a = 1;
    std::cout << a;
    {
    int a = 2;
    std::cout << a;
    }
    std::cout << a;

    я думаю такой пример иллюстрирует чуть больше.
    Кстати, в твоем примере
    >> cout << a << " " << b;// ОШИБКА!

    ошибки тут нет, т.к. переменная b используется чуть раньше в этой же области видимости (т.е. она там походу объявлена, ну или пример совсем непрозрачный) :

    >> if (b>a)

    ЗЫ. сделай ченибудь, при наборе в комменатрий вставляется эпическое количество пробелов, почему то (приходица удалять после того как комментарий опубликован уже). И еще, я нашел как код в комментарий вставить (ну потому что у самого блог есть), но тебе бы не помешало гденить справку по тегам бахнуть (обычно то теги типа [code=…] работают). Я ваще ненашел как в комментарий вставить цитату ([quote] не работает)

    • Да, я думал про области видимости отдельную статью вроде как сделать, когда про классы значит рассказывать буду, а тут так мельком. На счет b реально косяк был. Не могу с пробелами ничего сделать это дискас и ничего в нем не изменишь типа юзай как хочешь…

Научиться программировать

  • на Delphi

  • на Java

  • на C++

geekbrains.ru/
geekbrains.ru/