1个回答
展开全部
用指针最大的好处是提高性能。其中性能提高最大的是loop 中间两个内表比较之类的操作。
read table 时也能提高速度,如果这样的操作很多的话,速度提高也是很明显的。
通常方式:
READ TABLE it_t087t_1 WITH KEY ord4x = wa_anla-ord41 spras = sy-langu.
IF sy-subrc = 0.
wa_ass-ordtx_1 = wa_t087t_1-ordtx.
ENDIF.
指针方式:
READ TABLE it_t087t_1 WITH KEY ord4x = wa_anla-ord41 spras = sy-langu ASSIGNING <gs_t087t_1> BINARY SEARCH.
IF sy-subrc = 0.
wa_ass-ordtx_1 = <gs_t087t_1>-ordtx.
ENDIF.
read table 时也能提高速度,如果这样的操作很多的话,速度提高也是很明显的。
通常方式:
READ TABLE it_t087t_1 WITH KEY ord4x = wa_anla-ord41 spras = sy-langu.
IF sy-subrc = 0.
wa_ass-ordtx_1 = wa_t087t_1-ordtx.
ENDIF.
指针方式:
READ TABLE it_t087t_1 WITH KEY ord4x = wa_anla-ord41 spras = sy-langu ASSIGNING <gs_t087t_1> BINARY SEARCH.
IF sy-subrc = 0.
wa_ass-ordtx_1 = <gs_t087t_1>-ordtx.
ENDIF.
更多追问追答
追问
提高性能的原理是什么啊,请指教。
追答
使用指针后不需要把内表中的值来回搬移。效率上的差别打个比方来说 ,你写了三段文字后突然发现第一段的文字应该放在最后, 传统的方法就是把第一段划掉, 在第三段之后把第一段的内容重抄一遍, 指针的方法就是把第一段画个圈包起来,再用一个箭头指到第三段后面。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询