Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.22;
Скачать: CL | DM;

Вниз

Объявления типа. (типа объявление :)))   Найти похожие ветки 

 
Andy BitOff ©   (2004-08-09 12:58) [0]

Как правильно объявить примерно такой тип:


type
 TIndicationsS = ("aa","bbbb","e");

 TIndicationsN = ("01","15","32");

 TIndicationsSN = Record
   IndicationsString: TIndicationsS;
   IndicationsNumber: TIndicationsN;
 end;

 TIndications = TIndicationsSN;

 
Если что-то не понятно, а я думаю так и будет, потому что непонятно объяснил :) то предоставлю любую информацию по этому вопросу, просто не знаю что еще написать.


 
Smithson ©   (2004-08-09 13:00) [1]

Так и правильно.


 
Думкин ©   (2004-08-09 13:00) [2]


> TIndicationsS = ("aa","bbbb","e");

Это как?


 
Smithson ©   (2004-08-09 13:03) [3]

На самом деле, если тебе нужны множества из произвольного количества строк - то никак.
А если набор строк ограничен, то создаешь соответсвующие им константы в множестве и пользуешься ими.


 
Andy BitOff ©   (2004-08-09 13:07) [4]

Да, количество строк ограничено и не подлежит изменению - const


 
Goorus ©   (2004-08-09 13:12) [5]

TIndicationsS = ("aa","bbbb","e");

Это ты хочешь задать допустимые принимаемые значения?
Тогда правильно будет так

type
 TIndicationsS = (aa, bbbb, e);

const
 CIndicationsS:array[TIndicationsS]of String = ("aa", "bbbb", "e");

// использование

var is:TIndicationsS;
...
ShowMessage( CIndicationsS[is] );

Другого способа я не знаю.


 
Andy BitOff ©   (2004-08-09 13:13) [6]

const
 TIndicationsS = ["aa","bbbb","e"];

Но такое объявление, тоже не катит.


 
Думкин ©   (2004-08-09 13:19) [7]

type
 TIndicationsS = (aa,bbbb,e);
 TIndicationsN = (s01,s15,s32);

 TIndicationsSN = class
  private
   function GetIndicationsN(n: TIndicationsN): integer;
   function GetIndicationsS(n: TIndicationsS): string;
  public
   property IndicationsString[n : TIndicationsS] : string read GetIndicationsS;
   property IndicationsNumber[n : TIndicationsN] : integer read GetIndicationsN;
 end;

TIndications = TIndicationsSN;

  var
   TIndicationsS_Value : array[TIndicationsS] of string = ("aa","bbbb","e");
   TIndicationsN_Value : array[TIndicationsN] of integer = (01,15,32);

{ TIndicationsSN }

function TIndicationsSN.GetIndicationsN(n: TIndicationsN): integer;
begin
    Result := TIndicationsN_Value[n]
end;

function TIndicationsSN.GetIndicationsS(n: TIndicationsS): string;
begin
    Result := TIndicationsS_Value[n]
end;


Хотя весело. :)


 
GuAV ©   (2004-08-09 13:20) [8]


> const
>  CIndicationsS:array[TIndicationsS]of String = ("aa", "bbbb",
> "e");

см TypInfo.GetEnumName



Страницы: 1 вся ветка

Текущий архив: 2004.08.22;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.039 c
9-1083338063
Pirate
2004-04-30 19:14
2004.08.22
ДВИЖОК


9-1082036082
istemy
2004-04-15 17:34
2004.08.22
Как сделать так, чтобы герой не проходил стены?


1-1091976962
DeMoN_Astra
2004-08-08 18:56
2004.08.22
Log - и


1-1091688013
serg128
2004-08-05 10:40
2004.08.22
Как скопировать в буфер всю строку из Grid?


11-1079816341
nester
2004-03-20 23:59
2004.08.22
Как в KOLRichEdit сделать кусок текста как ссылку?