&* 包含文件中的参数
&* parameter in include file
现在我在一家公司工作,这家公司对银行来说很软。它使用 OpenEdge,我遇到了这种情况,在某些过程中添加了带有参数的包含文件。之后如果是第一个中的另一个include文件,可以加上参数&*。有人解释一下这是如何工作的吗?
例如:
first.i:
...
{second.i {*&}}
...
proc.p:
...
{first.i &f='one '
&s='two '
}
...
附加到第二个包含文件名称的 & 符号会将传递给 first.i 的所有参数也传递给 second.i。
{second.i {&*}}
在帮助文档中查找有点棘手,除非您知道自己在寻找什么,这是 {} Argument reference,它指出:
&argument-name
The name of the argument being referred to. If you refer to an argument-name and the calling procedure does not supply it, ABL ignores {&argument-name}.
If argument-name is an asterisk (*), ABL substitutes all arguments that the calling procedure passes. It also adds quotation marks to each parameter, so you can pass the named argument list through multiple levels of include files.
由于所有参数都已传递给 second.i,因此您可以:
// second.i
message {&f} {&s}.
现在我在一家公司工作,这家公司对银行来说很软。它使用 OpenEdge,我遇到了这种情况,在某些过程中添加了带有参数的包含文件。之后如果是第一个中的另一个include文件,可以加上参数&*。有人解释一下这是如何工作的吗?
例如:
first.i:
...
{second.i {*&}}
...
proc.p:
...
{first.i &f='one '
&s='two '
}
...
附加到第二个包含文件名称的 & 符号会将传递给 first.i 的所有参数也传递给 second.i。
{second.i {&*}}
在帮助文档中查找有点棘手,除非您知道自己在寻找什么,这是 {} Argument reference,它指出:
&argument-name The name of the argument being referred to. If you refer to an argument-name and the calling procedure does not supply it, ABL ignores {&argument-name}. If argument-name is an asterisk (*), ABL substitutes all arguments that the calling procedure passes. It also adds quotation marks to each parameter, so you can pass the named argument list through multiple levels of include files.
由于所有参数都已传递给 second.i,因此您可以:
// second.i
message {&f} {&s}.