在java中,我可以创建一个具有许多辅助类型方法的实用程序类型类。Cobol 是一种有很多用途的语言,但无法将参数传递到内部段落并不是其中之一。我已经开始在单独的模块中使用一些子例程并调用它们。这引出了两个问题:
谢谢,
对于问题 1,这取决于实现和编译器选项。
对于问题 2,使用 COBOL 85,可以从同一源编译多个程序。例如:
program-id. prog-1.
...
end program prog-1.
program-id. prog-2.
...
end program prog-2.
etc.
Run Code Online (Sandbox Code Playgroud)
每个程序都好像是单独编译的。这些程序共享的任何公共数据或文件都可以通过使用该子句来提供给每个程序EXTERNAL。
程序也可以嵌套。例如,
program-id. multi-nested.
...
program-id. prog-1.
....
end program prog-1.
program-id. prog-2.
....
end program prog-2.
end program multi-nested.
Run Code Online (Sandbox Code Playgroud)
这些程序共享的任何公共数据或文件都可以通过使用该子句来提供给每个程序GLOBAL。
一些实现允许ENTRY声明。例如,
program-id. multi-entry.
...
linkage section.
...
procedure division [ using ... ].
...
entry "prog-1" using ...
...
entry "prog-2" using ...
...
end program multi-entry.
Run Code Online (Sandbox Code Playgroud)
在此示例中,LINKAGE SECTION包含所有参数,即使每个入口点可能仅使用其中的一些参数。
这些的使用方式在很大程度上取决于现场标准。