ABAP-指针

来源:互联网 发布:网络促销策划书模板 编辑:程序博客网 时间:2024/05/01 15:31
关于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
<>:指针为内表
 
 
如何分配指针:

 

1. ASSIGN f TO .:分配一个指针,包括以下几种类型

 

1. ... CASTING ... :主要对unicode系统地操作

 

1a. ... CASTING

 

1b. ... CASTING TYPE type

 

1c. ... CASTING ... DECIMALS dec

 

1d. ... CASTING LIKE f1
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开始,是fn倍长之后的内容分配给指针

 

ASSIGN f INCREMENT n TO .

 

  5.分配局部变量给指针

 

ASSIGN LOCAL COPY

 

    3a. ASSIGN LOCAL COPY OF f TO .

 

3b. ASSIGN LOCAL COPY OF INITIAL f TO .

 

3c. ASSIGN LOCAL COPY OF INITIAL LINE OF itab TO .

 

4c. ASSIGN LOCAL COPY OF MAIN TABLE FIELD (f) TO .

 

 6. ASSIGN dynamicJ:动态分配指针

 

4a. ASSIGN (f) TO .

 

4b. ASSIGN oref->(f) TO .

 

4c. ASSIGN (f1)=>(f2) TO .

 

4d. ASSIGN TABLE FIELD (f) TO .

 

4e. ASSIGN LOCAL COPY OF MAIN TABLE FIELD (f) TO .

 

4f. ASSIGN LOCAL COPY OF ... (f) TO .

 

4.      如何取消分配:
   UNASSIGN .
 
原创粉丝点击