Aba*_*ito 3 abap reference type-conversion
我发现了一段如图所示的代码,在这种情况下我或多或少知道它会导致什么,但通常我不知道语法#( )。语法是什么#( )?在哪里可以找到更多相关信息?
DATA: lv_str TYPE string VALUE 'ABCD'.
DATA: dref1 TYPE REF TO data.
DATA: dref2 TYPE REF TO data.
* Old Syntax
GET REFERENCE OF LV_STR INTO dref1.
* New Syntax
dref2 = REF #( LV_STR ).
BREAK-POINT.
Run Code Online (Sandbox Code Playgroud)
小智 6
# 是变量类型的占位符。您也可以将第 11 行写成这样:
dref2 = REF data( lv_str ).
Run Code Online (Sandbox Code Playgroud)
那会做同样的事情。如果您未指定,# 将自动采用左侧变量的类型。
在此之前我还没有见过 TYPE REF TO ,但它相当常见,因为
VALUE #( )
我没有找到任何有关该REF #( )版本的文档,但这里是 的官方 SAP 文档VALUE #( ),它也解释了 # 的作用。