Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

функция внутри функция


bevaine ©   (2006-06-05 09:26:00) 

Я новичок в Делфи, имеется функция:
function funfc1()
........
end;
имеется другая функция в которой должна выполнятся первая, но у меня выдает ошибку, что делать, может func1 описывать где-то надо?


bevaine   (2006-06-05 10:17:00) [1]

сорри, разобрался ;)


bevaine   (2006-06-05 10:13:00) [2]

tsa, не помогает :(
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
 TForm1 = class(TForm)
 Button1: TButton;
 procedure Button1Click(Sender: TObject);
private
  { Private declarations }
public
  function func1(a, b: integer): integer;
  function func2(c, d: integer): integer;
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

function func1(a, b: integer): integer;
begin
func1 := func2(10, 6) + a + b;
end;

function func2(c, d: integer): integer;
begin
func2 := c - d;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
n : integer;
begin
n := func1(4, 5);
end;

end.


tsa   (2006-06-05 09:53:00) [3]

Объявить надо функции, - написать их

  { Public declarations }
end;

function func1(a, b: integer): integer;
function func2(c, d: integer): integer;
var
Form1: TForm1;


icWasya   (2006-06-05 09:48:00) [4]

function func1(a, b: integer): integer; forward;
function func2(c, d: integer): integer; forward;

function func1(a, b: integer): integer;
begin
func1 := func2(10, 6) + a + b;
end;

function func2(c, d: integer): integer;
begin
func2 := c - d;
end;


Сергей М.   (2006-06-05 09:45:00) [5]

поменяй местами ф-ции func1 и func2


bevaine   (2006-06-05 09:41:00) [6]

пожалуста: unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;

type
 TForm1 = class(TForm)
   Button1: TButton;
   procedure Button1Click(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}
function func1(a, b: integer): integer;
begin
 func1 := func2(10, 6) + a + b;
end;

function func2(c, d: integer): integer;
begin
 func2 := c - d;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
 n : integer;
begin
 n := func1(4, 5);
end;

end.

ошибка - [Îøèáêà] Unit1.pas(27): Undeclared identifier: 'func2'


tsa   (2006-06-05 09:31:00) [7]

Код давай со стрелкой где ошибка


Наверх

Титульная страница Поиск, карта сайта Написать письмо