subroutine的参数传递
總結一下我們創建subroutine的時候有哪些規則
且看標準的 form 用法
FORM subr [TABLEStable_parameters]
??????????[USING parameters]
??????????[CHANGING parameters]
??????????[RAISING exc1 exc2 ... ].
??...
ENDFORM.
Extras:
1.... TABLES table_parameters
2.... USING parameters
3.... CHANGING parameters
4.... RAISING exc1 exc2 ...
?
首先 由于table參數已經過時,我們一般不用它
1, USING
在我們確定參數在subroutine中不作為結果傳出的時候,我們使用USING, 但是在subroutine實參的值還是可能不小心被改變, 為了不讓實參在跑完subroutine的值發生改變,我們通常會使用 USING VALUE(CALL BY VALUE)。 使用USING VALUE就會有一個問題,如果傳入的是內表,并且數據量比較大,如果使用USING VALUE難免會導致效率低,所以建議傳內表就用USING,但是要保證subroutine中沒有修改內表值的地方。
?
2. CHANGING
在我們確定參數在subroutine中最終作為結果傳出的時候,我們使用CHANGING,這樣,subroutine中任何一處形參的改變就會導致實參發生改變。
?
總結
以上是生活随笔為你收集整理的subroutine的参数传递的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: DStream实战之Spark Stre
- 下一篇: 电子元器件贸易企业如何借助ERP系统,解