Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.06.2010, 10:11   #1
VintProg
not
Участник клуба
 
Аватар для VintProg
 
Регистрация: 27.06.2009
Сообщений: 1,399
Вопрос case в Record

Вот код.

Код:
type
 TGR = Record
    base : string;

   case Boolean of
     true: (hgs : integer);
     false: (hf : single);

  end;

и что она дает case?
VintProg вне форума Ответить с цитированием
Старый 11.06.2010, 10:22   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А учебники советские по Паскалю уже не в моде?
http://doki.far.ru/pascal/records.html
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.06.2010, 10:31   #3
Grag
А может и не...
Участник клуба
 
Аватар для Grag
 
Регистрация: 27.03.2010
Сообщений: 1,269
По умолчанию

Я полагаю что это позволяет динамически (в режиме Run-time) определить тип данных, хранящихся в исходной строке (после преобразования в числовой эквивалент). Либо это 32-х битовое целочисленное со знаком, либо 4-байтовое вещественное... Так как-то видится....
Перемешивай дело с бездельем и не сойдешь с ума...
Grag вне форума Ответить с цитированием
Старый 11.06.2010, 10:31   #4
VintProg
not
Участник клуба
 
Аватар для VintProg
 
Регистрация: 27.06.2009
Сообщений: 1,399
По умолчанию

Цитата:
А учебники советские по Паскалю уже не в моде?
Я конечно читал учебники но про case в record, там не было?

Но а как использовать вариант?
VintProg вне форума Ответить с цитированием
Старый 11.06.2010, 10:35   #5
Grag
А может и не...
Участник клуба
 
Аватар для Grag
 
Регистрация: 27.03.2010
Сообщений: 1,269
По умолчанию

Объявляешь переменную как тип variant, а потом ей присваиваешь значение...
Код:
Var
  V:Variant;
...................
V:=123.456;
V:=56;
V:='А это строка';
Перемешивай дело с бездельем и не сойдешь с ума...
Grag вне форума Ответить с цитированием
Старый 11.06.2010, 10:43   #6
VintProg
not
Участник клуба
 
Аватар для VintProg
 
Регистрация: 27.06.2009
Сообщений: 1,399
По умолчанию

Цитата:
Объявляешь переменную как тип variant, а потом ей присваиваешь значение..
Все тоже самое, что использовал case что нет?
VintProg вне форума Ответить с цитированием
Старый 11.06.2010, 10:44   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Но а как использовать вариант?
Это уже не в моде... Тип Variant сейчас рулит, и кстати даже от него уже стараются отказаться.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.06.2010, 10:53   #8
Ol'ga_new
Форумчанин
 
Регистрация: 12.05.2010
Сообщений: 125
По умолчанию

Stilet дал хорошую ссылку, там про case в record в самом конце написано!
Ol'ga_new вне форума Ответить с цитированием
Старый 11.06.2010, 10:53   #9
megachuhancer
Форумчанин
 
Регистрация: 16.04.2009
Сообщений: 247
По умолчанию

Цитата:
даже от него уже стараются отказаться.
Каким образом? В смысле что взамен предполагается использовать?

Последний раз редактировалось megachuhancer; 11.06.2010 в 10:59.
megachuhancer вне форума Ответить с цитированием
Старый 11.06.2010, 11:13   #10
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Но а как использовать вариант?
а чем Вам не устроил пример, который описан по ссылке из поста #2 Stilet ?!
в зависимости от типа фигуры можно задавать/ использовать разные характеристики!

или пример из встроенного в TP хелп:
Код:
type
  Class  = (Num, Dat, Str);
  Date   = record
     D, M, Y: Integer;
  end;
  Facts = record
    Name: string[10];
    case Kind: Class of
      Num: (N: real);
      Dat: (D: Date);
      Str: (S: string);
  end;
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Для чего case нужен в record? VintProg Общие вопросы Delphi 14 22.10.2013 23:48
В чём различие записей Record от Packed Record? Terran Общие вопросы Delphi 7 08.06.2010 17:14
Record / Packed Record Alex Cones Общие вопросы Delphi 7 11.11.2009 10:43
my Record subsonic Общие вопросы Delphi 5 09.02.2009 15:20