gpt4 book ai didi

progress-4gl - Progress-gl - 将变量声明放在过程之上有什么好处

转载 作者:行者123 更新时间:2023-12-01 09:53:00 25 4
gpt4 key购买 nike

虽然这不是我的主要职责,但我从事 Progress 4GL 已经 8 年了。我更多地使用 C++ 和 Java。当用其他语言编程时,建议声明接近用法。然而,对于 4GL,我看到人们将声明放在文件的顶部。它甚至在编码标准中。

我认为将它们放在文件之上会导致“垂直分离”问题。在大多数其他语言中,甚至建议在声明的同一行进行赋值。

问题是为什么建议在 4GL 中这样做?有什么好处?我知道可以将声明放在文件中的任何位置,因为它是在使用之前声明的。

最佳答案

我认为答案与 Progress 4GL 中的范围界定或缺乏范围界定有关。

如果你习惯了 Java,比如说,并且阅读了一个 Progress 4GL 程序,那看起来像

DO:
DEFINE VARIABLE x AS INTEGER INITIAL 4.
DISPLAY x.
END.

那么您就不会期望能够在程序的其他任何地方使用 x 的这个值,并且在 block 中所做的任何更改都不会影响 block 外的任何内容。

据我了解,在程序主体内声明的所有进度变量的作用域都是整个程序,除非它们是在内部过程或函数中声明的,在这种情况下,它们的作用域是过程或函数。

(顺便说一下,您在内部过程/函数中使用的任何默认缓冲区 [即未声明的] 都适用于整个程序,而不仅仅是过程或函数,因此您需要非常小心地在您想要的函数中显式声明缓冲区递归使用)。

因此,我认为在程序开始时声明变量的约定是为了反射(reflect) Progress 将处理它们的事实,无论您将声明放在何处。

关于progress-4gl - Progress-gl - 将变量声明放在过程之上有什么好处,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34198882/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com