delphi类似return()的返回函数是哪个呢?
在delphi里用了一下return()结果报错,不知和return()一样的功能是哪一个,多些各位指点一下。
[解决办法]
C:
return(x);
对应Delphi:
Result := x;
exit;
[解决办法]
不是,因为return(x)并不一定出现在函数代码的最后。
如果return(x)出现在函数代码的最后,则对应的就只需要Result:=x;了。
例如:
- C/C++ code
int f1(int a){ if (a < 5) return(1); if (a < 15) return(2); if (a < 25) return(3); return(4);}
[解决办法]
用函数名作用和result一样~Result := 4;也就是f1 := 4;
[解决办法]
Delphi里面的方法(Method)有两种类型:
1. 过程(procedure)
2. 函数(function)
两者最大的区别就是:函数需要返回类型,而过程没有。
每个函数里面有一个隐含的变量:Result。需要注意的有两点:
1. Result是局部变量,本身是分配在栈上的。
2. Result需要被初始化(赋值)。
另外,有的时候为了提高速度,可以使用out类型的参数。如:
function GetIntf: IInterface;
->
procedure GetIntf(out intf: IInterface);