abap like 和 type
like是引用数据对象
TYPE是引用数据类型
一个最简单的例子
TYPES:BEGIN OF ty_alv,
matnr TYPE mara-matnr,
maktx TYPE makt-maktx,
END OF ty_alv.
DATA: alv1 TYPE ty_alv.
DATA: alv2 LIKE alv1.
ty_alv是定义的一个数据类型;
因此alv1可以type,但是不能like,使用like会报错,因为他不能引用数据类型。
但是alv2可以like alv1, 因为alv1已经被实例化为一个对象了,所以可以like
不过我更喜欢用type,因为在开发中,大部分情况下 用like的情况下大部分都可以用type,但是用type的情况下却不一定可以用like。
使用type的情况:
- 基本的数据类型,i,n,c,等。
- 已经在系统定义好的数据元素,用SE11 查看数据元素
- 数据库表里的字段
- 你自己在程序里面用TYPES,也就是上面的例子
- 自己在程序里面用TYPES定义的结构里面的一个小成员,如 data lv_m type ty_alv-matnr。
- 数据库表
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律