码迷,mamicode.com
首页 > 其他好文 > 详细

ABAP程序中的局部与全局变量

时间:2015-01-31 10:40:30      阅读:315      评论:0      收藏:0      [点我收藏+]

标签:

声明:原创作品转载时请注明文章来自SAP师太博客并以超链接形式标明文章原始出处否则将追究法律责任!
原文出自:

1.9.  ABAP程序中的局部与全局变量

报表程序中选择屏幕事件块(AT SELECTION-SCREEN)与逻辑数据库事件块、以及methods(类中的方法)、subroutinesFORM子过程)、function modulesFunction函数)中声明的变量为局部的,即在这些块里声明的变量不能在其他块里使用,但这些局部变量可以覆盖同名的全局变量;除这些处理块外,其他块里声明的变量都属于全局的(如报表事件块列表事件块、对话Module),效果与在程序最开头定义的变量效果是一样的,所以可以在其他处理块直接使用(但要注意的是,需遵守先定义后使用的原则,这种先后关系是从语句书写顺序来说的,与事件块的本身运行顺序没有关系);另外,局部变量声明时,不管在处理块的任何地方,其效果都是相当于处理块里的全局变量,而不像其他语言如Java那样:局部变量的作用域可以存在于任何花括号{}之间(这就意味着局部变量在处理过程范围内是全局的),如下面的i,在ABAP语言中还是会累加输出,而不会永远是1(在Java语言中会是1):

FORM aa.
 
DO 10 TIMES.
   
DATA: i TYPE i VALUE 0.
   
i = i + 1.
   
WRITE: / i.
 
ENDDO.
ENDFORM.

ABAP程序中的局部与全局变量

标签:

原文地址:http://www.cnblogs.com/jiangzhengjun/p/4263674.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!