- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
ABAP 中是否可以使用 TRY-CATCH 子句捕获 DATREF_NOT_ASSIGNED?
DATREF_NOT_ASSIGNED 属于 ABAP 编程错误类别,这意味着:“ABAP 程序中的错误,例如被零除或未捕获的可捕获异常。”
问题:修改以下代码以捕获 DATREF_NOT_ASSIGNED:
data gv_i type ref to i.
gv_i->*17.
这个错误的简单处理是:
data gv_i type ref to i.
if gv_i is initial.
gv_i = new #( ).
endif.
gv_i->*17.
所需的解决方案将使用 TRY-CATCH 或其他构造来处理异常/错误。下面的代码不起作用:
data gv_i type ref to i.
try.
gv_i->* = 17.
catch CX_ROOT.
gv_i = new #( ).
endtry.
最佳答案
您无法捕获 DATREF_NOT_ASSIGNED。
ABAP language documentation for the Dereferencing Operator ->*证实了这一点:
If the data reference variable contains the null reference, the non-handleable exception DATREF_NOT_ASSIGNED is raised when the dereferencing operator is used.
使用is not bond
检查空引用:
data gv_i type ref to i.
if gv_i is not bound.
gv_i = new #( ).
endif.
gv_i->*17.
关于exception - 如何捕获运行时错误 DATREF_NOT_ASSIGNED?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64894905/
ABAP 中是否可以使用 TRY-CATCH 子句捕获 DATREF_NOT_ASSIGNED? DATREF_NOT_ASSIGNED 属于 ABAP 编程错误类别,这意味着:“ABAP 程序中的错
ABAP 中是否可以使用 TRY-CATCH 子句捕获 DATREF_NOT_ASSIGNED? DATREF_NOT_ASSIGNED 属于 ABAP 编程错误类别,这意味着:“ABAP 程序中的错
我是一名优秀的程序员,十分优秀!