Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Передать управление процедуре 
:(
    Опции темы
Витаминка
Дата 23.12.2006, 20:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 56
Регистрация: 9.12.2006

Репутация: 1
Всего: 1



Привет! Есть вопросик один, у меня есть функция с обычным условием if then else, если условие ложно то мне надо передать управление процедуре каторая находится в коде, как это сделать если так нельзя:
Код

function start;
begin
if .... then
.....
else
call;


Код

procedure call;
var
begin
....



PM MAIL   Вверх
MetalFan
Дата 23.12.2006, 20:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 62
Всего: 128



почему нельзя? религия не позволяет?!


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
Витаминка
Дата 23.12.2006, 20:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 56
Регистрация: 9.12.2006

Репутация: 1
Всего: 1



Да, в моей леригии это срашнейший грех! smile  На самом деле ошипка всюму виной -  Undeclared identifier: 'call' видно из за того что это всё в функции, но под процедуру переделать эту функция я не могу и не хочу
PM MAIL   Вверх
Matematik
Дата 23.12.2006, 20:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1027
Регистрация: 11.3.2006

Репутация: 17
Всего: 50



Код

unit Unit1;

interface

implementation

procedure b;
begin

end;

procedure a;
begin
  b;
end;

end.


или так
Код

unit Unit1;

interface

procedure b;

implementation

procedure a;
begin
  b;
end;

procedure b;
begin

end;

end.


зы
учи язык
PM MAIL WWW ICQ   Вверх
Витаминка
Дата 23.12.2006, 20:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 56
Регистрация: 9.12.2006

Репутация: 1
Всего: 1



зы
получше посмотри на мой первый пост

Это сообщение отредактировал(а) Витаминка - 23.12.2006, 20:42
PM MAIL   Вверх
Matematik
Дата 23.12.2006, 20:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1027
Регистрация: 11.3.2006

Репутация: 17
Всего: 50



Может тогда по-русски объяснишь, что не получается. Из твоих постов не понятно.
PM MAIL WWW ICQ   Вверх
Витаминка
Дата 23.12.2006, 21:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 56
Регистрация: 9.12.2006

Репутация: 1
Всего: 1



Matematik тут вообще ничё писать ненадо, просто надо посмотреть на код:
Код

function start;    
begin    
if .... then    
.....    
else    
call;
end;

procedure call;    
var    
begin    
....
end;


и ошипку Undeclared identifier: 'call'

Если все равно не даходит, тогда уж извини



Это сообщение отредактировал(а) Витаминка - 23.12.2006, 21:04
PM MAIL   Вверх
Alexeis
Дата 23.12.2006, 21:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Код

procedure call;    

function start;    
begin    
if .... then    
.....    
else    
call;
end;

procedure call;    
var    
begin    
....
end;

Если функция реализована ниже, то нужно описать ее прототип.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
VICTAR
Дата 23.12.2006, 21:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1108
Регистрация: 6.10.2006

Репутация: 37
Всего: 80



Попробуй процедуру call написать выше процедуры start.
PM MAIL   Вверх
Витаминка
Дата 23.12.2006, 21:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 56
Регистрация: 9.12.2006

Репутация: 1
Всего: 1



Попробывала, тоже самое, можеть есть чё нить типа оператора GO TO как в qbasik'е чтоль smile Ето всё из-за таго наверна что передача процедуре идёт в функции, что делать почему то нельзя=(

Это сообщение отредактировал(а) Витаминка - 23.12.2006, 21:32
PM MAIL   Вверх
MetalFan
Дата 23.12.2006, 22:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 62
Всего: 128



что пробовала?!
Код

procedure call;
begin
end;

procedure start;
begin
 if true then call;
end;


скажи еще, что не работает...
может вам книжек почитать, а?


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
Витаминка
Дата 23.12.2006, 22:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 56
Регистрация: 9.12.2006

Репутация: 1
Всего: 1



Всё заработало, просто надо было функцию c условием прикрепить к TForm. Тема закрыта smile 
PM MAIL   Вверх
bems
Дата 24.12.2006, 22:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 31
Всего: 88



а может function TForm1.Inet ?


--------------------
Обижено школьников: 8
PM MAIL   Вверх
ivan219
Дата 25.12.2006, 00:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1121
Регистрация: 19.11.2005
Где: Планета земля

Репутация: 2
Всего: 12



А если её локальной зделать если конечно кней другие функции необрощаются.
Код

function start;
procedure call;
var
    ....
begin
....
end;
begin
if .... then
.....
else
call;
end;

PM MAIL ICQ   Вверх
Zero
Дата 25.12.2006, 01:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2169
Регистрация: 23.10.2004
Где: Россия, г. Рязань

Репутация: 8
Всего: 24



Цитата(VICTAR @  23.12.2006,  21:10 Найти цитируемый пост)
Попробуй процедуру call написать выше процедуры start.

Цитата(Витаминка @  23.12.2006,  21:23 Найти цитируемый пост)
Попробывала, тоже самое,

Пробовала чем интересно писать???
Код

procedure call;
begin
  showmessage('test');
end;

function tt:integer;
begin
  call;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  i:integer;
begin
  i := tt;
end;
 Она не может так не работать...
Цитата(Витаминка @  23.12.2006,  22:31 Найти цитируемый пост)
Всё заработало, просто надо было функцию c условием прикрепить к TForm. Тема закрыта

 smile  smile  smile  smile  smile  smile  smile  smile  smile  smile  smile  smile  smile  smile  smile 
ООП тебе учить надо. smile 
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1374 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.