![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| danilsl |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 78 Регистрация: 15.3.2006 Репутация: нет Всего: нет |
Привет всем.
Вот такой код:
Я рассчитывал Заранее всем спасибо. |
|||
|
||||
| lukas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 771 Регистрация: 23.2.2007 Репутация: 3 Всего: 15 |
прально... она возвращает адресс процедуры.. а не параметр!
Это сообщение отредактировал(а) lukas - 29.8.2007, 16:57 -------------------- http://code.google.com/p/orionphp/ - opensource скриптовой язык Orion (аналог PHP) для freepascal/delphi. |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 4 Всего: 260 |
учитывая, что у тебя не процедура, а метод, то тип надо объявить так:
Ибо методу ещё и передается объект, к которому этот метод относится. По всей видимости, этот аргумент должен идти первым(или последним). И если ты работаешь с методом как с обычной процедурой(как у тебя и есть), то процедура будет обрабатывать и аргумент-указатель на объект, а при приведении к типу integer там будет всяко не тройка, а довольно большое число-адрес. Что у тебя и наблюдается. А если мы указываем тип "procedure(...) of object", то указываем пропускать аргумент-указатель и работать только с объявленными программистом аргументами. |
|||
|
||||
| lukas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 771 Регистрация: 23.2.2007 Репутация: 3 Всего: 15 |
попробуй так...
-------------------- http://code.google.com/p/orionphp/ - opensource скриптовой язык Orion (аналог PHP) для freepascal/delphi. |
|||
|
||||
| danilsl |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 78 Регистрация: 15.3.2006 Репутация: нет Всего: нет |
Всем спасибо, разобрался.
|
|||
|
||||
| skyboy |
|
||||||||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 4 Всего: 260 |
зачем? в коде есть ещё одна неувязка:
Т.е. метод относится к конкретному объекту, а работать с ним пытаются как с методом класса. Учитывая, что работа с полями объекта не происходит, вроде бы все ничего, но лучше ошибок не создавать себе и либо объявить метод методом класса:
либо получать метод через объект, а не через класс
|
||||||||
|
|||||||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |