ABAP 代码中,哪些特殊字符不能用于变量命名?
生活随笔
收集整理的這篇文章主要介紹了
ABAP 代码中,哪些特殊字符不能用于变量命名?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
下列 ABAP 代碼,哪些行會引起編譯錯誤?
REPORT z.TYPES t_itab TYPE TABLE OF i WITH EMPTY KEY.DATA(lt*) = VALUE t_itab( ( 10 ) ( 20 ) ( 30 ) ).DATA(lt!) = VALUE t_itab( ( 10 ) ( 20 ) ( 30 ) ).DATA(lt$) = VALUE t_itab( ( 10 ) ( 20 ) ( 30 ) ).DATA(lt_) = VALUE t_itab( ( 10 ) ( 20 ) ( 30 ) ).DATA(lt?) = VALUE t_itab( ( 10 ) ( 20 ) ( 30 ) ).BREAK-POINT.答案是第7行和第13行。
ABAP 里的感嘆號作為 escape 字符,用以區別于 ABAP 語句中同名的ABAP keyword. ABAP 語句中前面帶有 ! 字符的每個單詞都被解釋為一個操作數,而不是一個 ABAP keyword. 轉義字符本身不是名稱的一部分,在執行語句時會被忽略。
比如下面的 ABAP 代碼:
FORM test USING !CHANGINGCHANGING !USING.using = changing. ENDFORM.第一個 CHANGING 前面加上了感嘆號,說明這個 CHANGING 不是關鍵字,而是 FORM 的形式參數的名稱。
第13行的問題是:
In Unicode programs, the “” character cannot appear in names, as it does here in the name “”.
在 ABAP unicode 程序里,希臘字符 “?”不允許作為變量名。
在 TypeScript 和 JavaScript 里沒有這個限制。實際上,? 廣泛用于 Angular 源代碼里。
更多Jerry的原創文章,盡在:“汪子熙”:
總結
以上是生活随笔為你收集整理的ABAP 代码中,哪些特殊字符不能用于变量命名?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 介绍一个使用 cl_abap_corre
- 下一篇: npm publish 发布一个 Ang