IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

> Типизированные константы, Дельфи
sheka
сообщение 18.11.2010 20:29
Сообщение #1


Я.
****

Группа: Пользователи
Сообщений: 809
Пол: Мужской
Реальное имя: Саша

Репутация: -  11  +


const
y0: integer = 20;
//...
y0 := Image1.Height - y0;
//...

[Error] Unit1.pas(103): Left side cannot be assigned to
ыыы... Чего то я вааще в шоке smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
volvo
сообщение 19.11.2010 14:48
Сообщение #2


Гость






Цитата
А как тогда статические переменные делать в процедурах?
Делай не в процедурах, а в методах класса. А "статические переменные" теперь - это переменные с классовой областью видимости, которые инициализируются в конструкторе. Ибо Object Pascal, и не фиг (по мнению разработчиков) сидеть на процедурном подходе.

А между тем Extended Pascal вполне умеет:
program tst;

procedure p;
var count: integer = 0; attribute(static);
begin
inc(count);
writeln('count = ', count);
end;

var i: integer;
begin
for i := 0 to 9 do
begin
p;
end;
end.

, что выдает:
Vlady@V877$ gpc tst.pp
Vlady@V877$ ./a.out
count = 1
count = 2
count = 3
count = 4
count = 5
count = 6
count = 7
count = 8
count = 9
count = 10

 К началу страницы 
+ Ответить 

Сообщений в этой теме
sheka   Типизированные константы   18.11.2010 20:29
Client   const y: Integer = 20; begin y := 55; end;Точн...   18.11.2010 20:50
volvo   Это, а {$J+} не пробовали? Или Assignable typ...   18.11.2010 20:52
sheka   Оно! А че эт так? В каких целях эта директива...   18.11.2010 22:05
Unconnected   Может, от того, что константы как бы синонимы слов...   18.11.2010 22:19
volvo   Эта директива вообще существует только в целях сов...   18.11.2010 22:38
Гость   > Вообще, никогда не понимал, почему бы не сдел...   18.11.2010 22:48
sheka   Т.е. типизированные константы лучше не использоват...   18.11.2010 23:04
Unconnected   var x:integer=10; , или я что-то не понял?)   18.11.2010 23:59
sheka   Прикол.. ФП тоже разрешает такое делать..Еще на ТП...   19.11.2010 1:51
volvo   Можешь не пробовать. Это расширение Object Pascal-...   19.11.2010 1:58
sheka   Мне кажется, что компилятор скажет обо мне то, что...   19.11.2010 2:08
volvo   Глобальные переменные инициализировать при описани...   19.11.2010 4:05
TarasBer   > А как тогда задавать начальные значения? В д...   19.11.2010 10:13
Archon   Не знал, что в Делфи по-умолчанию нельзя менять ти...   19.11.2010 10:21
TarasBer   Меня другое в дельфе напрягает const T = Time;...   19.11.2010 10:45
volvo   Делай не в процедурах, а в методах класса. А ...   19.11.2010 14:48


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 29.07.2025 0:26
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"