Delphi中,关于函数体内部函数的定义,这是一个类似的代码。定义后的优缺点是什么?非常感谢!
楼上的回答明显跑题了,不知道怎么推荐。正解如下:
内部函数,或称嵌入式函数,是pascal(delphi)的一个特性,它有两个优点:
1,通过本土化,体现了一种包装思想。函数的内嵌函数和它的局部变量一样,对它的外部逻辑是不可见的,可以屏蔽外界的意外调用或访问,保证代码逻辑的安全性。另一个优势也很明显。不同函数的内嵌函数是允许同名的,就像流程中很多函数或者循环变量使用I和J一样,不用费心给变量、函数等取不同的名字。,尤其是逻辑函数相似的函数。相信大家都有这样的经历。在编码实现的过程中,命名是一件挠头的事情。我的经验是:功能范围广的名字要表达清楚,一般比较长,功能范围小的名字不需要太讲究,因为成本不小。
2.每个嵌入式函数都可以“看到”其父函数的参数和前面定义的局部变量,这样嵌入式函数就可以控制更多的资源,不需要什么都通过参数传递,可以在一定程度上节省参数传递的性能开销。这个问题的本质与“如何谨慎使用全局变量?”同样,简单地否定全局变量在任何情况下都没有好处。代码百科全书数量庞大,其中讨论了全局变量的适用性。根据这本书的描述,使用全局变量可以消除“穿梭数据”。