在RPGLE中在D-Specs中定义原型的优势

Rad*_*tor 1 rpgle ibm-midrange

我最近学习了固定格式RPG IV中的loacal程序及其在D-Specs和P-Specs部分中的实现或省略D-Specs定义的定义.

根据IBM文档,如果我省略D中的定义,编译器将自动从过程接口生成必要的定义,然后是我实现我的过程的P-Spec.

现在我想知道两次定义过程接口有什么好处?是否有任何好处(几乎)相同的代码编写两次(在P-Spec的顶部和下面的D-Specs中)或者这只是程序员有一个有意义的地方来定义输入/输出参数的选项为程序?

提前致谢

jma*_*phy 8

从IBM i v7.1开始,对于内部过程,创建原型没有任何优势,事实上存在一个错误的风险(尽管该问题很容易被检测和纠正).在此之前,所有程序都需要原型.对于从服务程序或模块导出的过程,原型是至关重要的.我将它们保存在一个单独的副本中,以便我可以在我的模块源中包含相同的原型,并使用该模块包含在程序源中.通过这种方式,您只需要将原型的单个副本浮动,并且可以轻松地将其包含在您需要的任何位置.

  • 没有优势....最初你**有**内部程序的原型.现在你没有.但是你可能会发现拥有它们的旧代码.随意删除它们. (2认同)