ключевые слова должны использоваться для создания записи варианта?

какие ключевые слова должны использоваться для создания варианта записи??


person osabri    schedule 17.06.2010    source источник
comment
Какой компилятор Pascal вы используете?   -  person RRUZ    schedule 18.06.2010
comment
Вот как это сделать: privat.rejbrand.se/howtoaccept.html   -  person Andreas Rejbrand    schedule 18.06.2010


Ответы (2)


@osabiri проверьте документацию на бесплатный паскаль, связанный с записями.

Type  
  MyRec = Record  
          X : Longint;  
          Case byte of  
            2 : (Y : Longint;  
                 case byte of  
                 3 : (Z : Longint);  
                 );  
          end; 

Важная заметка :

Вариантная часть должна быть последней в записи. Необязательный идентификатор в операторе case служит для доступа к значению поля тега, которое в противном случае было бы невидимым для программиста. Его можно использовать, чтобы увидеть, какой вариант активен в определенное время1. По сути, он вводит новое поле в запись.

проверить эти ссылки

person RRUZ    schedule 17.06.2010
comment
не могли бы вы объяснить, что вы подразумеваете под своим последним абзацем. Предположим, у меня есть случай как «case Integer of 0 : ‹something› 1 : ‹something-2› end; Как решить, какое дело будет выполнено? - person CyprUS; 24.04.2012

case: Рассмотрим этот стандартный пример из http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/devcommon/structuredtypes_xml.html

TEmployee = record
  FirstName, LastName: string[40];
  BirthDate: TDate;
  case Salaried: Boolean of
    True: (AnnualSalary: Currency);
    False: (HourlyWage: Currency);
end;
person Andreas Rejbrand    schedule 17.06.2010