Вниз
Скачать: CL | DM;

function and procedures   Найти похожие ветки 

← →
griban ©   (2004-05-09 16:34) [0]

Narod,pomogite pozhalujsta,gde mozhno pochitatj tolkovuju literaturu po sozdaniju i ispoljzovaniju SVOIH funkcij ili procedur.Vesj material,kotorij ja nahodil, stradaet ot skudosti opisnija...ili ja chegoto ne ponimaju...:(


← →
Palladin ©   (2004-05-09 16:40) [1]

Любой учебник Паскаля.


← →
Sergey Masloff   (2004-05-09 16:55) [2]

В чем проблема-то?
пишешь
function MySuperFunc(ParamName : ParamType[, ParamName : ParamType]) : ResultType;
begin
 // Тут делаешь что хочень с параметрами
 MySuperFunc = {Тут пишешь результат вычислений};
 // или Result = {Тут пишешь результат вычислений};
end;

используешь так:
var
 Var1 : ResultType;
begin
 //где-то в программе
 ....
 Var1 := MySuperFunc(Значение параметра[, значение параметра])
end;

Процедура то же самое но не возвращает значения. Конечно, процедура может изменить значения входных параметров, с помощью чего "вернуть" их значения в вызывающий код но сама процедура значение не возвращает.

procedure MySuperProc(ParamName : ParamType[, ParamName : ParamType]);
begin
 // Делаешь что хочешь
end;

вызываешь так

код
...
MySuperProc(Значение параметра[, значение параметра]);

Чтобы изменить в процедуре значение параметра (и оно изменилось бы после выхода из процедуры (или функции)) параметр нужно передать по ссылке, то есть передать в процедуру не копию значения параметра а ссылку на область памяти содержащую исходное значение. Для этого перед параметром надо поставить слово var.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.022 c
1-1084355121
Mim1
2004-05-12 13:45
2004.05.23
Не опасен ли следующий код


1-1083838438
killer
2004-05-06 14:13
2004.05.23
Раскраска StringGrid-а


14-1083547372
MPS
2004-05-03 05:22
2004.05.23
Задачка по информатике...


14-1083236023
infom
2004-04-29 14:53
2004.05.23
Как вам вчерашнии игры


9-1074423637
ZAROLF
2004-01-18 14:00
2004.05.23
2D аркада "SPACEMAN"




   Наверх