powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / const параметры
52 сообщений из 52, показаны все 3 страниц
const параметры
    #35529578
smskin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не до конца понятен смысл const параметров в delphi.
Ну то что изменять их значение внутри процедуры нельзя - это понятно.
Непонятно передаются ли const параметры по ссылке или по значению?
...
Рейтинг: 0 / 0
const параметры
    #35529588
Фотография Anatoly Podgoretsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это дело компилятора, чаще всего по ссылке.

--
http://www.podgoretsky.com
...
Рейтинг: 0 / 0
const параметры
    #35529606
Ega
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
smskinНе до конца понятен смысл const параметров в delphi.
Ну то что изменять их значение внутри процедуры нельзя - это понятно.
Непонятно передаются ли const параметры по ссылке или по значению?

А какая разница, каким образом там в кишках это дело устроено? Причем, насколько я понимаю, это дело может меняться при изменении компилятора.
...
Рейтинг: 0 / 0
const параметры
    #35529643
x77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
smskinНу то что изменять их значение внутри процедуры нельзя - это понятно.

если передавался объект - его свойства менять можно, всегда.

официальная документация утверждает, что объявление параметра константой служит для неких оптимизаций, проводимых компилятором, и касающихся структурированных и строковых типов. можно, конечно, попытаться прикинуть, в чём могли бы заключаться такие оптимизации, только вот нафига?

с точки зрения более высокого уровня, т.е. концепций ООП, такие параметры нужны для исключения логических ошибок на этапе написания кода. например, чтобы какой особо одарённый пионер не вздумал менять дескриптор подключения к СУБД или там оконный хэндл.
...
Рейтинг: 0 / 0
const параметры
    #35530064
vunder
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дело не только в логике программного кода. При всей вашей полемике вы забываете, что передача параметров в подпрограмму возможно ТОЛЬКО 2 способами: по значению и по ссылке. В первом случае значение переменной копируется в стэк и передается через него в подпрограмму. При передачи по указателю в стэк копируется только ссылка на переменную. В Delphi/Pascal для объявления передачи параметров по значеню не надо указывать никаких дополнительный директив. Использование const и var определят рабочу с переменными через указатели. Для программиста это всего лишь будет означать некоторые особенност испольвания таких переменных, а вот для компилятора - совсем другое дело.
P.S. Маленький совет: все переменный, размер которых превышает 4 байта лучше объявлять как const (ну или var , если значение будет меняться). В этом случае, например при передачи строковых параметров, будет расходоваться меньше памяти, т.к. при передачи больших переменных по значению они будут полностью дублироваться.
...
Рейтинг: 0 / 0
const параметры
    #35530073
vunder
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кстати, передача объекта всегда производиться по указателю. Единственный нюанс - директива var . Если объект был передан с ее помощью, то изменение параметра внутри подпрограммы изменит и его значение в основном коде.
...
Рейтинг: 0 / 0
const параметры
    #35530326
alex0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vunderКстати, передача объекта всегда производиться по указателю. Единственный нюанс - директива var . Если объект был передан с ее помощью, то изменение параметра внутри подпрограммы изменит и его значение в основном коде.
А если объект был передан без var , то изменение параметра внутри подпрограммы все равно изменит и его значение в основном коде
Код: plaintext
1.
2.
3.
 procedure  TMainForm.Button1Click(Sender: TObject);
 begin 
  (Sender  as  TButton).Caption := 'Кликнули по мне';
 end ;
...
Рейтинг: 0 / 0
const параметры
    #35530386
Фотография Альт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
const - это передача по ссылке для структур... а объект - это и так ссылка... его передавай хоть так, хоть эдак... в 32-ух битой адресации памяти при 32 битных регистрах разницы не будет...
зы: попробуйте передать в функцию 4 гигабайтный массив не по ссылке )
...
Рейтинг: 0 / 0
const параметры
    #35530477
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EgaА какая разница, каким образом там в кишках это дело устроено?
Любопытно, как Вы отнесетесь к врачу, исповедующему этот подход.

x77с точки зрения более высокого уровня, т.е. концепций ООП, такие параметры нужны для исключения логических ошибок на этапе написания кода.
Бред.

vunderПри всей вашей полемике вы забываете, что передача параметров в подпрограмму возможно ТОЛЬКО 2 способами: по значению и по ссылке.
Чтобы утверждение не было бредом, добавляйте "в Delphi".

vunderВ первом случае значение переменной копируется в стэк
Бред.

vunderИспользование const и var определят рабочу с переменными через указатели.
Ну-ну.

vunderВ этом случае, например при передачи строковых параметров, будет расходоваться меньше памяти, т.к. при передачи больших переменных по значению они будут полностью дублироваться.
Бред.
...
Рейтинг: 0 / 0
const параметры
    #35530533
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer, чем обвинить всех в бреде (с чем я не спорю, т.к. действительно бред),
лучше бы дали краткое описание своего видения вопроса. Ну или ссылку на одно
из многочисленных объяснений. :)


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
const параметры
    #35530732
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустамлучше бы дали краткое описание своего видения вопроса.
Оно уже давно приведено в топике: официальная документация утверждает, что объявление параметра константой служит для неких оптимизаций, проводимых компилятором, и касающихся структурированных и строковых типов.
...
Рейтинг: 0 / 0
const параметры
    #35530772
Фотография Альт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer vunderПри всей вашей полемике вы забываете, что передача параметров в подпрограмму возможно ТОЛЬКО 2 способами: по значению и по ссылке.
Чтобы утверждение не было бредом, добавляйте "в Delphi".

вот... тут у меня вопрос... предполагаю, появление в ответе что-то типа функциональных языков.... но чем теперь обозначать "Delphi"? для меня это rad
...
Рейтинг: 0 / 0
const параметры
    #35530804
Фотография Anatoly Podgoretsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторофициальная документация утверждает, что объявление параметра константой служит для неких оптимизаций, проводимых компилятором, и касающихся структурированных и строковых типов.
Вообще то это не цель, а цель
авторA constant (const) parameter is like a local constant or read-only variable. Constant parameters are similar to value parameters, except that you can't assign a value to a constant parameter within the body of a procedure or function, nor can you pass one as a var parameter to another routine. (But when you pass an object reference as a constant parameter, you can still modify the object's properties.)
А оптимизация побочный эффект
авторUsing const allows the compiler to optimize code for structured- and string-type parameters. It also provides a safeguard against unintentionally passing a parameter by reference to another routine.
При указании данного модификатора, компилятор может сохранить несколько тактов, не делая некоторых проверок и сохранений, которые пришлось бы сделать, при модификаторе var. Естественно это действует для структурных типов и строк.

--
http://www.podgoretsky.com
...
Рейтинг: 0 / 0
const параметры
    #35530837
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly PodgoretskyВообще то это не цель, а цель ... А оптимизация побочный эффект
Ровно наоборот. То, что Вы называете целью, если рассмотреть его именно как "цель, к которой надо стремиться", мягко говоря, нафиг не нужно. На самом деле это не цель, а нечто вроде подсказки компилятору - добровольно принимаемое обязательство, которое позволяет компилятору сгенерировать более эффективный код.

Собственно, рано или поздно компиляторы научатся самостоятельно распознавать возможность такой оптимизации, и модификатор const станет устаревшим. Однако, как мы знаем, существуют возможности работы через указатели, что воздвигает перед подобной автоматикой серьезные препятствия.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
const параметры
    #37807372
и все-таки
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А как на самом деле передаются const параметры? Если функция с const параметром в dll, и надо вызвать ее из C++. На стеке должно быть значение или адрес?
...
Рейтинг: 0 / 0
const параметры
    #37807479
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и все-такиА как на самом деле передаются const параметры? Если функция с const параметром в dll, и надо вызвать ее из C++. На стеке должно быть значение или адрес?
Подозреваю, это зависит ещё и от конвенции вызовов. В обычной для дельфи register все параметры размером больше int-а передаются по ссылке, а дальше пролог функции по необходимости копирует значение в локальную память. Модификатор const собственно отменяет такое копирование, позволяя действовать прямо по переданному указателю. Если написать const например с int-параметром - подозреваю, он всё равно будет передаваться по значению, то есть игнорируя const. Не пробовал. А как оно будет вести себя, например, в cdecl - вопрос отдельной интересности.
...
Рейтинг: 0 / 0
const параметры
    #37807483
Фотография Квейд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly PodgoretskyЭто дело компилятора, чаще всего по ссылке.
всегда по ссылке
...
Рейтинг: 0 / 0
const параметры
    #37807492
Фотография Квейд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
x77 smskinНу то что изменять их значение внутри процедуры нельзя - это понятно.

если передавался объект - его свойства менять можно, всегда.

официальная документация утверждает, что объявление параметра константой служит для неких оптимизаций, проводимых компилятором, и касающихся структурированных и строковых типов. можно, конечно, попытаться прикинуть, в чём могли бы заключаться такие оптимизации, только вот нафига?

с точки зрения более высокого уровня, т.е. концепций ООП, такие параметры нужны для исключения логических ошибок на этапе написания кода. например, чтобы какой особо одарённый пионер не вздумал менять дескриптор подключения к СУБД или там оконный хэндл.Вы упустили очень важный момент. Объявление параметра константой и передача оного по ссылке в первую очередь необходимо для исключения копирования "длинных" параметров (типа строк) в стек вызываемой процедуры.
...
Рейтинг: 0 / 0
const параметры
    #37807497
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КвейдОбъявление параметра константой и передача оного по ссылке в первую очередь необходимо для исключения копирования "длинных" параметров (типа строк) в стек вызываемой процедуры.
Строки не копируются в стек вызываемой процедуры. У них при отсутствии const просто инкрементируется счётчик ссылок.
...
Рейтинг: 0 / 0
const параметры
    #37807501
spider13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer,

даже у wideString?
...
Рейтинг: 0 / 0
const параметры
    #37807516
Фотография Anatoly Podgoretsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spider13softwarer,

даже у wideString?
у wideString нет счетчика ссылок.
...
Рейтинг: 0 / 0
const параметры
    #37807522
Фотография Квейд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КвейдAnatoly PodgoretskyЭто дело компилятора, чаще всего по ссылке.
всегда по ссылкеПрошу меня извинить, не всегда.
...
Рейтинг: 0 / 0
const параметры
    #37807526
Фотография Anatoly Podgoretsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КвейдAnatoly PodgoretskyЭто дело компилятора, чаще всего по ссылке.
всегда по ссылке
Можешь привести ссылку на справку, где такое сказано?
...
Рейтинг: 0 / 0
const параметры
    #37807534
Фотография Anatoly Podgoretsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На эксперименты или на анализ ассемблерного кода можешь не ссылаться.
...
Рейтинг: 0 / 0
const параметры
    #37807549
spider13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Podgoretskyspider13softwarer,

даже у wideString?
у wideString нет счетчика ссылок.

Правильно, что в таком случае увеличивать)

Вообще, насколько я понял, то прямые значения передаются для числовых типов, для остальных же это ссылка, но могу ошибаться.
...
Рейтинг: 0 / 0
const параметры
    #37807597
Фотография Квейд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly PodgoretskyНа эксперименты или на анализ ассемблерного кода можешь не ссылаться. 12599985
...
Рейтинг: 0 / 0
const параметры
    #37807656
Фотография Anatoly Podgoretsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я раньше написал.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
const параметры
    #39697726
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извините, что поднимаю тему старую, просто не вижу смысла создавать новую.
Вопрос опять же по const.
Почитал, что разницы нет в этом коде:
Код: pascal
1.
2.
procedure RestoreBarManagerStream(const BarManager: TdxBarManager);
procedure RestoreBarManagerStream(BarManager: TdxBarManager);


ну кроме того, что const запрещает изменять свойства объекта.


Проверил: добавил строку
Код: pascal
1.
BarManager.StretchGlyphs := True;


и никаких ошибок компилятор не выдал.

И если const запрещает изменение объекта, то почему процедура
Код: pascal
1.
BarManager.LoadFromStream(stream);


выполняется тоже без проблем.


Тогда вопрос. Для каких типов объектов актуально использовать const при передаче параметров?
String не в счёт.
...
Рейтинг: 0 / 0
const параметры
    #39697732
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11,

потому что параметр BarManager (т.е. адрес памяти) не меняется, меняются его свойства
...
Рейтинг: 0 / 0
const параметры
    #39697733
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11ну кроме того, что const запрещает изменять свойства объекта.
Где такое сказано ?
...
Рейтинг: 0 / 0
const параметры
    #39697738
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11ну кроме того, что const запрещает изменять свойства объекта.Где ты такое прочитал?

const запрещает присваивать значение самому объекту

Код: pascal
1.
BarManager := nil;


X11 Тогда вопрос. Для каких типов объектов актуально использовать const при передаче параметров? Для типов, размер которых превышает машинное слово, чтобы избежать ненужного копирования в памяти и для типов, с управляемым временем жизни, чтобы избежать передергивания счетчика ссылок.

Т.е. для Win64:
Интерфейсы

Строки

Записи

Массивы

Variant

Extended

Для Win32: Win64 +

Int64

Double (TDateTime)

Для мобильных платформ + объекты (ибо у них есть счетчик ссылок)
...
Рейтинг: 0 / 0
const параметры
    #39697740
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
const параметры
    #39697746
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DimaBrX11ну кроме того, что const запрещает изменять свойства объекта.
Где такое сказано ?

потерял ссылку... лень искать
...
Рейтинг: 0 / 0
const параметры
    #39697748
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksandr SharahovX11,

потому что параметр BarManager (т.е. адрес памяти) не меняется, меняются его свойства

а разве когда передаёшь переменную string, то меняется адрес? или я не понял?
...
Рейтинг: 0 / 0
const параметры
    #39697749
GunSmoker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В Билдере это. В Билдере нельзя, в Delphi - можно.
...
Рейтинг: 0 / 0
const параметры
    #39697750
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Vasilisk_X11ну кроме того, что const запрещает изменять свойства объекта.Где ты такое прочитал?

я не прочитал, а сделал вывод самостоятельно
...
Рейтинг: 0 / 0
const параметры
    #39697753
Котовасия
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11,

наверное, ссылка на какого-нибудь выдумщика была.
...
Рейтинг: 0 / 0
const параметры
    #39697759
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11,

Код: pascal
1.
2.
procedure RestoreBarManagerStream(const BarManager: TdxBarManager);
procedure RestoreBarManagerStream(BarManager: TdxBarManager);



В приведённом тобой примере, действительно нет разницы, т.к. BarManager - это класс.
На ассемблере, это будет одно и тоже - как ссылка на адрес в памяти на экземпляр этого класса.
Без const компилятор делает локальную копию переменной, которую передали в качестве параметра.

Но в случае, если параметр имеет тип:
1. string, массив или variant: их длинна может быть не ограниченна, и копирование будет затратным. С Const копирования не будет.
2. Interface: каждый раз, когда его будут передавать в качестве параметра, его RefCount будет увеличиваться на 1, а при выходе из метода - уменьшаться на 1. В случае const этого происходить не будет.
3. Во всех остальных случаях, особой разницы нет. Копирование 4-16 байт не сделает разницы.
...
Рейтинг: 0 / 0
const параметры
    #39697761
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Vasilisk_const запрещает присваивать значение самому объекту

Код: pascal
1.
BarManager := nil;



аааа, я понял, свойства менять можно, но вот присваивать что-то самому объекту напрямую нельзя:
Код: pascal
1.
2.
3.
4.
5.
6.
...
var
  BarManager1: TdxBarManager;
begin
  BarManager := BarManager1;// ошибка
...
...
Рейтинг: 0 / 0
const параметры
    #39697765
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_BВ приведённом тобой примере, действительно нет разницы, т.к. BarManager - это класс.
На ассемблере, это будет одно и тоже - как ссылка на адрес в памяти на экземпляр этого класса.
Без const компилятор делает локальную копию переменной, которую передали в качестве параметра.

>>>Без const компилятор делает локальную копию переменной, которую передали в качестве параметра.
Вот опять мне не понятно. Получается, будет создан ещё один экземпляр BarManager если не подставить const?
...
Рейтинг: 0 / 0
const параметры
    #39697767
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11 >>>Без const компилятор делает локальную копию переменной, которую передали в качестве параметра.
Вот опять мне не понятно. Получается, будет создан ещё один экземпляр BarManager если не подставить const?

Нет. Будет создана ещё одна ссылка на экземпляр этого класса.
...
Рейтинг: 0 / 0
const параметры
    #39697770
Котовасия
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11Valery_BВ приведённом тобой примере, действительно нет разницы, т.к. BarManager - это класс.
На ассемблере, это будет одно и тоже - как ссылка на адрес в памяти на экземпляр этого класса.
Без const компилятор делает локальную копию переменной, которую передали в качестве параметра.

>>>Без const компилятор делает локальную копию переменной, которую передали в качестве параметра.
Вот опять мне не понятно. Получается, будет создан ещё один экземпляр BarManager если не подставить const?
Переменной является ССЫЛКА на экземпляр.
...
Рейтинг: 0 / 0
const параметры
    #39697771
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11,

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
var
 BarManager: TdxBarManager
 BarManager1: TdxBarManager
 BarManager2: TdxBarManager
begin
  BarManager:=TdxBarManager.Create; //Создать экземпляр класса, и присвоить его адрес в BarManager
  BarManager1:=BarManager;  
  BarManager2:=BarManager; //Теперь все переменные ссылаются на один и тот же экземпляр класса.
  BarManger2.Free; //Уничтожит экземпляр класса и сделает все ссылки не него неверными.
end;
...
Рейтинг: 0 / 0
const параметры
    #39697773
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_BНет. Будет создана ещё одна ссылка на экземпляр этого класса.
КотовасияПеременной является ССЫЛКА на экземпляр.

теперь доходит
...
Рейтинг: 0 / 0
const параметры
    #39697774
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11Aleksandr SharahovX11,

потому что параметр BarManager (т.е. адрес памяти) не меняется, меняются его свойства

а разве когда передаёшь переменную string, то меняется адрес? или я не понял?

const запрещает менять переданное, а объект передается как адрес.
Когда изменяешь свойства объекта, его положение в памяти не меняется.
Изменить объект = присвоить значение самому объекту, и его положение в памяти в общем случае может измениться.

Со строками работает магия компилятора.
Да, когда изменяешь символы строки, ее положение в памяти в общем случае может измениться. Но главное дело в магии.
...
Рейтинг: 0 / 0
const параметры
    #39697801
Василий 2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В основном заповедь такая:
1) на простые типы (булевы, символы, числа, даже вещественные, указатели) const ничего не дает, т.к. все равно в подпрограмму передается копия
1.1) если указатель - это объект, то в режиме ARC (auto ref count, для мобильных платформ) см. правило для интерфейса
2) на все остальные (записи, массивы, строки, интерфейсы) - не помешает, и даже даст выигрыш производительности. Плюс защитит от класса ошибок типа procedure(s: string) begin s:='foo'; end
3) если параметр исключительно выходной, то лучше объявлять его out, а не var. var для тех, у кого читается значение на входе и меняется на выходе
...
Рейтинг: 0 / 0
const параметры
    #39697814
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DimaBr, а слона-то я и не заметил спасибо
...
Рейтинг: 0 / 0
const параметры
    #39698718
white_nigger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что это было?
...
Рейтинг: 0 / 0
const параметры
    #39698736
Котовасия
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
white_nigger,

подготовка к пятнице.
...
Рейтинг: 0 / 0
const параметры
    #39698947
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
white_nigger, ты про что именно?
...
Рейтинг: 0 / 0
const параметры
    #39699078
white_nigger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11white_nigger, ты про что именно?Про первые главы "Delphi для чайников". Вроде не пятница
...
Рейтинг: 0 / 0
const параметры
    #39699086
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
white_niggerПро первые главы "Delphi для чайников"

ой, когда это было... лет-лет и памяти нет
...
Рейтинг: 0 / 0
52 сообщений из 52, показаны все 3 страниц
Форумы / Delphi [игнор отключен] [закрыт для гостей] / const параметры
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]