![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Объявить константу-массив
ekto © (2008-05-20 12:28:00)Всем доброго времени суток.
Нужно сделать следующее:
const
TMyType = array [9..26] of string = (...);
но так ругается компил.
Как подобное можно реализовать?
Gydvin (2008-05-20 15:05:00) [1]Только сейчас заметил [2] - исправлюсь :)
В справке до этого искал, но видать, не то.
Anatoly Podgoretsky (2008-05-20 15:00:00) [2]> Gydvin (20.05.2008 13:47:10) [10]
Ты тоже игнорируешь совет про справку.
Gydvin (2008-05-20 14:45:00) [3]
> Reindeer Moss Eater © (20.05.08 14:10) [16]
Я так извращалсо ;0)
procedure TForm1.Button1Click(Sender: TObject);
const
ar:array [0..3]of Int64 = (42949672970,42949673010,214748364850,214748364810);
Type
TArrayInt64ToPoint = array [0..3]of TPoint;
PArrayInt64ToPoint = ^TArrayInt64ToPoint;
begin
canvas.Polygon(PArrayInt64ToPoint(@ar)^);
end;
> ((X:0; Y:10),(X:60; Y:10))
неудобная конструкция и имена неопустишь и местами не поменяешь. (
Ну да ладно
Reindeer Moss Eater (2008-05-20 14:10:00) [4]const DummyPoint : array[boolean] of Longint = (MyLongInt1,MyLongInt2);
var PP : PPoint;
begin
pp := @DummyPoint;
end;
Palladin (2008-05-20 14:01:00) [5]гемор это когда ты int64 объявляешь...
Gydvin (2008-05-20 13:58:00) [6]
((X:0; Y:10),(X:60; Y:10))
ну и гемор... О_о
Palladin (2008-05-20 13:50:00) [7]
> ПО логике должно быть так ((0,1) , (0,2)).
странная у тебя логика... по логике книжки по паскалю читать нужно...
Palladin (2008-05-20 13:48:00) [8]
> Gydvin © (20.05.08 13:47) [10]
record constants + F1
Gydvin (2008-05-20 13:48:00) [9]либо наполнять динамически
Gydvin (2008-05-20 13:47:00) [10]раз уж пошли такие вопросы, то и я задам, для общего развития. Как объявить массив-константу TPoint? А то приходится объявлять вместо него int64 и юзать через приведение типов...
Оговорюсь сразу. ПО логике должно быть так ((0,1) , (0,2)). Ан нет :(
Юрий Зотов (2008-05-20 13:07:00) [11]> ekto © (20.05.08 12:36) [6]
> а вот так:
> const
> MyStringArray: array [0, 9..26] of string = ('мама', 'мыла', 'раму', ...);
Прокатит, если Вы сумеете найти в справке такой цикл прохода по массиву:
for i := 0, 9..26 do ...
Reindeer Moss Eater (2008-05-20 12:45:00) [12]а вот так:
const
MyStringArray: array [0, 9..26] of string = ('мама', 'мыла', 'раму', ...);
а вот этак?
MyStringArray: array ['еще одна абракадабка'] of string = ('кто-то', 'парит', 'моск', ...);
Palladin (2008-05-20 12:41:00) [13]совет обратиться к справке ты конечно мудро проигнорировал
ekto (2008-05-20 12:36:00) [14]а вот так:
const
MyStringArray: array [0, 9..26] of string = ('мама', 'мыла', 'раму', ...);
?
ekto (2008-05-20 12:33:00) [15]спасибо всем.
Palladin (2008-05-20 12:31:00) [16]и typed constants тоже
Юрий Зотов (2008-05-20 12:31:00) [17]Тип не может содержать значений, их может содержать переменная или константв данного типа.
const
MyStringArray: array [9..26] of string = ('мама', 'мыла', 'раму', ...);
Reindeer Moss Eater (2008-05-20 12:30:00) [18]двоеточие вместо равно
MBo (2008-05-20 12:30:00) [19]в справке есть примеры Array constants