公众号: SAP Technical
本文作者: matinal
原文出处:
原文链接:
前言部分
大家可以关注我的公众号,公众号里的排版更好,阅读更舒适。
正文部分
有收有放,转在说明,后面举例,给初学者(因为有很多人问到我这个)
关于abap指针的一些资料。
1.什么是abap指针: 在abap里面,fieldsymbol就相当于c语言的指针。如果你定义并且分配了相应的结构或者变量给它,其实它就指向这个结构或者变量的地址,如果修改了fieldsymbol的值,则相应结构或者变量的值也随之更改。 2.如何定义指针: 基本形式:field-symbols. 附加信息: 1....type:定义一个数据类型,然后定义指针 2....typerefto:指针指向类或者接口 3....typerefto:指针指向数据结构 4....typelineof:指针内表的行项目 5....like:指针为数据库表类型 6....likelineof:指针类型为数据库表的行项目 7....type<>:指针为内表 3.如何分配指针: (1).assignfto.:分配一个指针,包括以下几种类型 1....casting...:主要对unicode系统地操作 1a....casting 1b....castingtypetype 1c....casting...decimalsdec 1d....castinglikef1 2....typetype:直接指定类型 3....decimalsdec:指定小数点位数 4....rangerange:指定范围 (2).分配结构中的某个字段给指针 assigncomponentidxofstructurestructo. assigncomponentnameofstructurestructo. (3).分配类的方法给指针 assigndref->*to. (4).从f开始,是f的n倍长之后的内容分配给指针 assignfincrementnto. (5).分配局部变量给指针 assignlocalcopy 3a.assignlocalcopyoffto. 3b.assignlocalcopyofinitialfto. 3c.assignlocalcopyofinitiallineofitabto. 4c.assignlocalcopyofmaintablefield(f)to. (6).assigndynamicj:动态分配指针 4a.assign(f)to. 4b.assignoref->(f)to. 4c.assign(f1)=>(f2)to. 4d.assigntablefield(f)to. 4e.assignlocalcopyofmaintablefield(f)to. 4f.assignlocalcopyof...(f)to. 4.如何取消分配: unassign.例1:
例2: