Имя: Пароль:
1C
1С v8
Почему Неопределено не может быть ключом соответствия?
, , ,
0 Ненавижу 1С
 
гуру
30.01.12
17:24
1. традиционно 62% (8)
2. баг 15% (2)
3. багофича 15% (2)
4. фича 8% (1)
Всего мнений: 13

С = Новый Соответствие();
С.Вставить(Неопределено);
Сообщить(С.Количество()); //выдает 0
С = Новый Соответствие();
С.Вставить(NULL);
Сообщить(С.Количество()); //выдает 1

вопрос: почему? это фича или баг?
1 Maxus43
 
30.01.12
17:25
нельзя объять необятное, нельзя описать неописуемое и нельзя впихнуть невпих*емое (с)

традиционно
5 SUA
 
30.01.12
17:49
это 1с...

традиционно
6 rs_trade
 
30.01.12
17:55
(0) тебе надо доступ дать к партнерскому форуму. знатно троллить там разработчиков будешь ))

традиционно
8 fisher
 
30.01.12
18:04
У меня уже ассоциативный ряд "Неопределено-NULL-Ненавижу 1С" на подкорку записан :)
А если по теме, то такое поведение полностью укладывается в мою модель логики 1С.
В которой "Неопределено" - родное пустое значение 1С (с ньюансами использования), NULL в коде - служебный тип для обработки выборок из БД, а NULL в запросе - субедешный NULL.

традиционно
10 Rie
 
30.01.12
18:07
(9) Тем не менее, в список значений Неопределено можно добавить (в отличие от 7.х). И в массив можно.

традиционно
13 Shurjk
 
30.01.12
18:14
(0) У непределенно нет типа.

традиционно
35 guitar_player
 
31.01.12
06:53
да все логично в принципе

традиционно
36 Кириллка
 
31.01.12
06:57
Народ неадекватен :)

Неопределено - это примитивный тип данных (ИТС - Документация - Руководство разработчика - Глава 4).

А по забжу: С.Вставить(Неопределено) == С.Вставить(,), отсюда и выводы.

традиционно
Ошибка? Это не ошибка, это системная функция.