一个基础问题?谢谢!
我第一次见到过程可以这样写.
procedure xx;
procedure yy;
begin
yy的实现部分;
end;
begin
xx的实现部分;
end;
这是一种什么写法,有人能给解释这种写法吗?
procedure yy;为什么可以写在procedure xx下面,是什么意思,有什么用?
[解决办法]
这是一种内嵌函数,没什么大惊小怪的,该函数只能在xx中使用,或者叫局部函数吧
[解决办法]
直接写在函数内的函数你只能在这个函数内调用
[解决办法]
内嵌函数,有点类似于C/C++/Java的内联函数,但有所不同:
pascal的内嵌函数仅仅在外部函数的作用域内有效,循环用的局部变量不能定义在外部函数中,不支持异常处理(try..except or finally)等。
[解决办法]
procedure xx(k:integer);
procedure yy;
begin
k:=1;//内嵌函数还可以调用上层函数的参数
yy的实现部分;
end;
begin
xx的实现部分;
end;