在运行时或编译时使用BY NAME选项进行PL1结构赋值



在PL1中,可以使用选项BY NAME来分配结构。此功能是在运行时使用还是仅在编译时使用?

在这种情况下,IBM文档没有太大帮助。

您是在谈论过程中的BY NAME赋值(更广为人知的是BY Reference),还是在赋值中的BY NAME???。

根据手册参考资料,我认为您谈论的是PL1赋值中的BY NAME赋值选项,它是Cobol移动对应子句的变体。

是的,可以使用BY NAME选项分配pl1结构。它将在编译时确定具体分配给什么。

参见PL1 中的"按名称"示例

这基本上列出了:

  declare      declare       declare
  1 One,       1 Two,        1 Three,
   2 Part1,     2 Part1,      2 Part1,
    3 Red,       3 Blue,       3 Red,
    3 Orange,    3 Green,      3 Blue,
   2 Part2,      3 Red,        3 Brown,
    3 Yellow,   2 Part2,      2 Part2,
    3 Blue,      3 Brown,      3 Yellow,
    3 Green;     3 Yellow;     3 Green;

使用按名称子句的赋值语句

 One = Two, by name;
 One.Part1 = Three.Part1, by name;

1第一个赋值语句如下:

  One.Part1.Red    = Two.Part1.Red;
  One.Part2.Yellow = Two.Part2.Yellow;

2第二个赋值语句如下:

  One.Part1.Red = Three.Part1.Red;

相关内容

  • 没有找到相关文章

最新更新