微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

是否可以在 Progress-4GL 中创建常量?

如何解决是否可以在 Progress-4GL 中创建常量?

下午好, 是否可以在 Progress-4GL 中创建常量?

有人问了同样的问题 here,但问题是基于面向对象的编程(我没有这样做)。

提前致谢

解决方法

ABL 中没有 constant 关键字。

创建常量值的最简单方法是使用静态属性。这些可以在任何代码中使用,甚至是程序代码。

class ConstantValues:
  define static public PI as decimal initial 3.14159 get.
end class.

您可以添加一个私有 setter 并在静态构造函数中进行赋值,而不是 initial 值。

如果你不能或不想使用这种方法,你可以使用预处理器。如果您需要共享这些值,请在包含中定义预处理器并在您的程序(甚至是类)中使用它们。

但这 - 对我来说 - 如果您要创建新的常量值,则需要做更多的工作。

,

即使不是常量并且可能很老派,您也可以定义可以作为常量工作的预编译器语句。

有可能是全局 (&GLOBAL-DEFINE) 而不是全局 (&SCOPED-DEFINE)

也可以取消定义,检查定义和其他基本的东西。

这些是在编译时定义的,因此它们不能在程序运行时动态更改。

&SCOPED-DEFINE const1 1
&GLOBAL-DEFINE const2 hello

DISPLAY {&const1} "{&const2}".

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。