我明白IMPORTING
和EXPORTING
關鍵字的作用,但CHANGING
關鍵字的意義是什麼?在ABAP中調用方法時,CHANGING關鍵字的意義是什麼?
3
A
回答
6
IMPORTING
將實際參數作爲形式參數傳遞,從而將調用者的值傳遞給方法。 EXPORTING
完全相反,從方法中獲取一個值並將其傳回給調用者。 CHANGING
將這些結合在一起,將來自調用者的值再次傳回給方法,並且發生在兩者之間的任何變化。
請注意,雖然IMPORTING
和EXPORTING
在聲明和調用之間相反,但CHANGING
不是。
4
此外,利用FORM
和ENDFORM
,宣告子程序當CHANGING
關鍵字可用於任一像CHANGING myvar
或CHANGING VALUE(myvar)
。
CHANGING myvar
使得myvar
的值只要在子程序中被改變就立即改變。
相反,如果使用CHANGING VALUE(myvar)
,如果表單沒有正確返回(如果它通過示例拋出異常),則在調用代碼中myvar
的值將保持不變,即使它在子例程中被更改那墜毀。
相關問題
- 1. 方法上的'throws'關鍵字是什麼意思?
- 2. groovy中「使用」關鍵字/方法的用法是什麼?
- 3. RegisterClientScriptBlock方法調用中的Type參數的意義是什麼?
- 4. ABAP中的TYPES關鍵字
- 5. 覆蓋某個方法時,virtual關鍵字意味着什麼?
- 6. 在SQL查詢中轉義關鍵字的通用方法是什麼?
- 7. extern關鍵字是指什麼意思?
- 8. 關鍵字strictfp是什麼意思?
- 9. 在Java中,爲什麼instanceof是關鍵字而不是方法?
- 10. 方法參數中有final關鍵字的用途是什麼?
- 11. 'final'關鍵字的含義是什麼?
- 12. $ this關鍵字的含義是什麼?
- 13. 包裝方法的意義是什麼?
- 14. ToString()方法的意義是什麼?
- 15. ReactJS中鍵的意義是什麼?
- 16. 爲什麼我們需要在調用方法時使用關鍵字
- 17. 你是什麼意思的調用者在Java中的方法?
- 18. 在這個java方法中超級關鍵字是什麼?
- 19. 什麼_Default關鍵字在c#中的意思是#
- 20. Java - 爲什麼在調用泛型方法時需要'new'關鍵字?
- 21. 方法python方法簽名中_ = None的意義是什麼?
- 22. 「無法調用方法」在「未定義的值」上得到「是什麼意思?
- 23. 在方法調用中將abap方法調用作爲參數
- 24. 關鍵字'共享'在VB.NET中是什麼意思?
- 25. 意圖關閉時的調用方法
- 26. 在Java中使用此方法調用時調用的方法是什麼?
- 27. 在交換機中使用時,關鍵字類型的含義是什麼?
- 28. 調用方法時出現這種錯誤是什麼意思?
- 29. for循環中的ABAP方法調用
- 30. 使用關鍵字存儲網址 - 最佳方法是什麼?
如此有效地說,「CHANGING」是ABAP等同於引用的調用? – 2013-04-29 15:40:05
@amalantony:在許多其他編程語言中,「in/out/inout」參數和「按值/參考調用」的概念是鏈接的 - 而不是在ABAP中。您可以決定是否要傳遞一個值或一個引用,而無需指定內容的走向。 – vwegert 2013-04-30 06:24:24