Инструменты пользователя

Инструменты сайта


1c:база:условные_операторы

Условные операторы

Описание.

Условные операторы используются для реализации ветления веток алгоритмов. Обычно конструкция с условными оператором выглядит следующим образом:

Если а = 1 Тогда
	//Операции которые будут выполнены если условие истинно
ИначеЕсли а = 2 Тогда//этой ветки может и не быть, если она нам не нужна
	//Операции которые будут выполнены если второе условие истинно
Иначе //этой ветки может и не быть, если она нам не нужна
	//Операции которые будут выполнены если все условия ложны
КонецЕсли;

В условных конструкциях между операторами Если,Иначе и Тогда интерпретатор ожидает увидеть булевскую константу Истина или Ложь. Это может быть результат сравнения условного выражения или просто переменная с типом булево. Если вы уверены что у вас в переменной булево или вы делаете сравнение, не имеет смысла писать условия типа Если РеализацияПроведена = Истина Тогда интерпретатор выполнит плюс одно ненужное сравнение, гораздо логичнее и проще писать: Если РеализацияПроведена Тогда.

Сокращенная форма записи.

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

А = ?( А = 1, Б, В);

Здесь в случае если А = 1 ей будет присвоено значение переменной Б иначе она получит значение переменной В.

Проверка на выполнение условия только когда это имеет смысл.

В случаях когда выполнение второго и последующих условных выражений не имеет смысла, оператор его не производит. Например:

Если ТипЗнч(А) = "Структура" И А.КакоеТоСвойство = 1 Тогда

Здесь проверка свойства 'КакоеТоСвойство' будет выполнена только в том случае если тип переменной А является структурой. Иногда это бывает очень удобным, например в том случае, если бы в переменной А у нас оказалось Неопределенно попытка найти у нее какой либо свойство, привело бы к ошибке и остановило выполнение программы.

Только авторизованные участники могут оставлять комментарии.
1c/база/условные_операторы.txt · Последние изменения: 2016/10/17 20:06 — admin