Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
11 дек 2024, 22:28

Преобразование типов переменных

Автор MuI_I_Ika, 10 дек 2013, 00:15

0 Пользователей и 1 гость просматривают эту тему.

MuI_I_Ika


Преобразование типов переменных в 1С подобно преобразованию во всех основных языках программирования.


В 1С существует явное и неявное преобразование типа переменной.


Определение переменных


Назначение типа переменной в 1С всегда неявное. То есть в 1С нельзя определить переменную и явно указать какой у нее будет тип. Для объявления переменной достаточно просто вначале модуля или процедуры указать ее название:
МояПеременная;
В случае, если переменная должна быть экспортной, то есть ее значение должно быть видимо в различных модулях конфигурации. После имени переменной должно стоять ключевое слово Экспорт (Export).


МояПеременная Экспорт;


Экспортные переменные можно объявлять только в общих модулях конфигурации.
Саму переменную не обязательно объявлять явно. Она может быть создана внутри модуля неявно.


Явное преобразование


Под явным преобразованием подразумевается то, что вы явно указываете компилятору какое значение соответствует данной переменной.


Например, определим строковую переменную и далее сделаем ее числом.


Стр = "пустая строка";


Стр = 42;



Так же в 1С существуют функции явного преобразования. Например, функция Число() пытается преобразовать помещаемое в нее значение в число:


Перем1 = "021";
Перем2 = Число(Перем1);



По аналогии с функцией число существуют функции явного преобразования:

       
  • Строка()
  • Дата()
  • Булево()
Неявное преобразование


Неявное преобразование типа переменной может возникнуть при выполнении над переменной какой-либо функции или проведения над ней какой-либо операции.


Пример. Конкатенация строк. С том случае, если переменная имеет какой-либо тип, но вы пытаетесь ее соединить со строковой переменной, ее значение будет автоматически преобразовано в строку:

Перем1 = Справочники.Номенклатура.НайтиПоНаименованию("Ботинки");
Сообщить("Номенклатуры "+Перем1+" нет на складе");



Так же тип переменной может быть изменен в хоте выполнения функций с неявным преобразованием.


Например, функция СокрЛП() преобразует переданное в него значение в строку. То же самое произойдет при выполнении функции Формат();

Теги:

Похожие темы (2)

Рейтинг@Mail.ru

Поиск