|
一、例程:Delphi中独有的称呼,例程是将具体某个功能的代码进行封装表现形式: 1、过程 2、函数 过程和函数的区别在于有没有返回值 二、例程的作用 1、可以解决命名冲突问题 2、提高代码的重复使用率 3、提高代码可维护性 三、使用历程 1、定义
1 procedure Demo1(); //过程
2 begin
3
4 end;
函数的定义
1 function Demo2(var a : Integer;var b : Integer) : Integer; //函数
2 begin
3 Writeln(a,',',b);
4 end;
5
6 {传递参数个数不固定(多个参数)}
7 procedure Demo3(const num1 : array of Integer);
8 var
9 X,Y : Integer;
10 begin
11
12 end;
四、例程返回值
1 {*------------------------------------------------------------------------------ 2 一、什么是例程:Delphi中独有的称呼,例程是将具体某个功能的代码进行封装表现形式:
3 1、过程
4 2、函数
5 过程和函数的区别在于有没有返回值
6 二、例程的作用
7 1、可以解决命名冲突问题
8 2、提高代码的重复使用率
9 3、提高代码可维护性
10 三、怎么使用历程
11 1、定义
12
13 -------------------------------------------------------------------------------}
14 procedure Demo1(a : Integer;b : Integer); //过程,传值
15 begin
16 Writeln(a+b);
17 end;
18
19 {*------------------------------------------------------------------------------
20 函数的定义
21 @return
22 -------------------------------------------------------------------------------}
23 function Demo2(var a : Integer;var b : Integer) : Integer; //过程,传地址
24 begin
25 Writeln(a+b);
26 end;
27
28 {传递参数个数不固定(多个参数)}
29 procedure Demo3(const IntArray : array of Integer);
30 var
31 I : Integer;
32 begin
33 Writeln('----------------------------');
34 for I := Low(IntArray) to High(IntArray) do begin
35 Writeln(IntArray[I],#$09);
36 end;
37 Writeln('数组长度为:',Length(IntArray));
38 end;
39
40 var
41 a,b : Integer;
42
43 begin
44 a := 1;
45 b := 2;
46 Demo1(a,b);
47 Demo2(a,b);
48 Demo3([4,6,9,7]);//数组传值
49 Readln;
50 end.
1 {返回值:通过引用获取运算结果}
2 function Sub1(Num3 : Integer;Num4 : Integer;var sum : Integer) : Integer;
3 //var sum : Integer 传入地址
4 begin
5 sum := Num3 - Num4;
6 Exit;
7 end;
8
9 var
10 Sum1 : Integer;
11 begin
12 Sub1(5,3,Sum1);
13 Writeln(Sum1);
14 Readln;
15 end.
1 {返回值:out}
2 function mul(Num5:Integer;Num6:Integer;out sum:Integer):Integer;
3 begin
4 sum := Num5 * Num6;
5 Exit;
6 end;
7 var
8 sum : Integer;
9 begin
10 mul(5,3,sum);
11 Writeln(sum);
12 Readln;
13 end.
1 {通过函数名称获取返回值}
2 function GetResultByFunName():Integer;
3 begin
4 GetResultByFunName := 1+3;
5 end;
6 begin
7 Writeln(GetResultByFunName());
8 Readln;
9 end.
1 {overload 函数重载:函数名相同,参数列表不同,使用关键字标识}
2 function Add(Num1 : Integer;Num2 : Integer;var sum : Integer) : Integer; overload;
3 begin
4 sum := Num1 + Num2;
5 Exit;
6 end;
7
8 function Add(Num1 : Double;Num2 : Double;out sum : Double) : Double; overload;
9
10 begin
11 sum := Num1 + Num2;
12 Exit;
13 end;
14
15 var
16 // sum : Integer;
17 sum : Double;
18 begin
19 // Add(2,3,sum);
20 Add(2.4,2.02132,sum);
21 Writeln(sum);
22 Readln;
23 end.
1 {forward 前置声明}
2 function DivFun() : Integer; forward;
3
4 function MilFun() : Integer;
5 begin
6 DivFun();
7 end;
8
9 function DivFun() : Integer;
10 begin
11 Writeln('test');
12 end;
13 begin
14 MilFun();
15 Readln;
16 end.
来源:https://www.cnblogs.com/rise-home/p/11971495.html |