Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.08.22;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.041 c
1-1091963555
GuAV
2004-08-08 15:12
2004.08.22
Хранение параметров приложения


4-1089626855
Help
2004-07-12 14:07
2004.08.22
Проблема с свойством "Stay On Top"


1-1092029826
Санёк
2004-08-09 09:37
2004.08.22
Как при CustomAlign использовать уже существующие Align


14-1091539354
Алхимик
2004-08-03 17:22
2004.08.22
про Warning


4-1088564990
Алекс А
2004-06-30 07:09
2004.08.22
Можно ли на Дельфи написать драйвер мыши ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский