关于ABAP指针的一些资料。
1.
什么是
ABAP
指针:
在
ABAP
里面,
field symbol
就相当于
c
语言的指针。如果你定义并且分配了相应的结构或者变量给它,其实它就指向这个结构或者变量的地址,如果修改了
field symbol
的值,则相应结构或者变量的值也随之更改。
2.
如何定义指针:
基本形式:
FIELD-SYMBOLS
.
附加信息:
1.
... TYPE
:
定义一个数据类型,然后定义指针
2. ... TYPE REF TO
:指针指向类或者接口
3. ... TYPE REF TO :指针指向数据结构
4. ... TYPE LINE OF :指针内表的行项目
5. ... LIKE :指针为数据库表类型
6. ... LIKE LINE OF : 指针类型为数据库表的行项目
7. ... TYPE <> :指针为内表
3. ... TYPE REF TO :指针指向数据结构
4. ... TYPE LINE OF :指针内表的行项目
5. ... LIKE :指针为数据库表类型
6. ... LIKE LINE OF : 指针类型为数据库表的行项目
7. ... TYPE <> :指针为内表
如何分配指针:
(
1
)
.
ASSIGN f TO
.
:分配一个指针,包括以下几种类型
1d. ... CASTING LIKE f1
2. ... TYPE type :直接指定类型
3. ... DECIMALS dec :指定小数点位数
4. ... RANGE range :指定范围
2. ... TYPE type :直接指定类型
3. ... DECIMALS dec :指定小数点位数
4. ... RANGE range :指定范围
(
2
)
.
分配结构中的某个字段给指针
ASSIGN COMPONENT idx OF STRUCTURE struc TO
.
ASSIGN COMPONENT name OF STRUCTURE struc TO
.
(
3
)
.
分配类的方法给指针
ASSIGN dref->* TO
.
(
4
)
.
从
f
开始,是
f
的
n
倍长之后的内容分配给指针
ASSIGN f INCREMENT n TO
.
(
5
)
.
分配局部变量给指针
ASSIGN LOCAL COPY
(
6
)
.
ASSIGN dynamic
J
:动态分配指针
4.
如何取消分配:
UNASSIGN
.