ABAP中clearrefreshfree三者清空内表的区别

Posted 袁大帅Stray

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ABAP中clearrefreshfree三者清空内表的区别相关的知识,希望对你有一定的参考价值。

前言:

现在SAP官方正在抛弃使用带表头的内表,面向对象就是一个很好的例子。

对于一个ABAP开发者,你可以确保你自己写的代码没有带表头的内表,但是不能确保你所要维护的代码没有带表头的内表。

函数中,接口中,系统为我们定义的内表都是带表头的内表。

所以我感觉他一时半会也抛弃不了。尽量少使用或者不使用。

本文中带表头的内表为itab

本文中不带表头的内表为gt_itab ,工作区为gs_itab

正文:

1.clear 用法

带表头:清空表头:CLEAR ITAB(注意此时不清空内表)     清空内表:CLEAR ITAB[] (注意此时没有清空表头)

不带表头:清空工作区:CLEAR  gs_itab  清空内表:CLEAR  gt_itab[] 

2.REFRESH 用法

只限于清空内表

带表头   REFRESH ITAB   

不带表头 REFRESH gt_itab 

3.FREE 用法

REFRESH 类似,区别是清空同时它能释放内存,效率更高。

参考:https://www.xuebuyuan.com/1743203.html

 

以上是关于ABAP中clearrefreshfree三者清空内表的区别的主要内容,如果未能解决你的问题,请参考以下文章

ABAP清空屏幕内存参数的值

CLEARREFRESHFREE

在sap中没有找到主内存怎么解决

c语言中gets ,getschar 和fgets 的用法及三者之间的差别

abap选择屏幕中的输入字段,怎么触发

abap开发中,在屏幕上怎样显示alv