• [转]ABAP学习笔记之四指针


    关于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.      如何分配指针:
    (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开始,是f的n倍长之后的内容分配给指针
    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 .

  • 相关阅读:
    C++读取XML,开进程,开线程
    WinRT 异步模型
    记一个宣告失败的项目Metro VS2012RC的感性认识
    [翻译]深入理解Win32结构化异常处理(四)
    Google Test 测试架构探究
    .NET FrameWork 技术内幕
    [翻译]深入理解Win32结构化异常处理(三)
    谈一谈软件开发
    ExecutionContext & SynchronizationContext
    软件制作:QQPenguin辅助工具
  • 原文地址:https://www.cnblogs.com/wequst/p/1513879.html
Copyright © 2020-2023  润新知