Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Не присваивается элемент множества  (Прочитано 7700 раз)
0 Пользователей и 1 Гость смотрят эту тему.
NeferSky
Постоялец

ua
Offline Offline
Бессмертный


« : 27-03-2018 12:56 » 

Добрый день всем.
А может кто-нибудь объяснить "почему"?
Среда Delphi 7.
Делаю так:

Код:
type

TSomething = (sOne = 1, sTwo = 2, sThree = 3);

TSomethingRecord = record
  Int: Integer;
  Str: String;
  Smth: TSomething;
end;

TSomethingArray = array of TSomethingRercord;

...

var
  SmthArr: TSomethingArray;

...

begin
  SetLength(SmthArr, 1);
  SmthArr[0].Int := 1;
  SmthArr[0].Str := 'abc';
  SmthArr[0].Smth := sOne; // Господин Борланд не разрешает присвоение правой части в левую
end;

Вроде как, enum - тоже integer, я ему даже числа присвоил, а в запись-элемент массива не присваивается. Хотя и настоящий integer и даже string нормально туда влазят...
Записан

Не тронь налаженный механизм, и он тебя не подведет.
Делать надо хорошо, а плохо - само получится.
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 27-03-2018 20:09 » 

А зачем так? И в записи не все целое...
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
NeferSky
Постоялец

ua
Offline Offline
Бессмертный


« Ответ #2 : 02-04-2018 06:11 » 

Разобрался.
Пример писал по памяти из реального проекта. И вот именно так, как в примере я указал - работает. Не работает, если SmthArr сделать не переменной, а свойством класса, и обращаться через свойство. Странно, но ладно.
Записан

Не тронь налаженный механизм, и он тебя не подведет.
Делать надо хорошо, а плохо - само получится.
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines