Global
进行全局变量的说明。从哪里都可以访问全局变量。
格式
Global [ Preserve|Static|NonStatic ] 数据类型 变量名 [(数组变量的最大下标)] [, 变量名 [(数组变量的最大下标)] ,...]
参数
- Preserve
- 如果指定Preserve,将保持变量的值。如果更改项目,将清除此值。可省略。
- 数据类型
- 指定Boolean、Byte、Double、Int32、Integer、Long、Real、Short、String、UByte、UInt32、UShort之一的数据类型。
- 变量名
- 将变量名指定在32个字符以内。
- 数组变量的最大下标
- 可利用数组变量的最大下标声明到最高三维。使用下述格式。可省略。
(最大下标1, [最大下标2], [最大下标3])
由于下标从0开始,因此数组元素数为最大下标加上1。
如果是全局变量,所有数组元素数最大是100,000。但是,String型最大是10,000。
如果是备份变量(Global Preserve),所有数组元素数最大是4,000。但是,String型最大是400。
在所有数组元素数不超过以下最大值的范围内指定各最大下标。 - Static
- 如果指定Static,在控制器启动后第一次执行主函数时被初始化。
- NonStatic
- 如果指定NonStatic,每次执行主函数时都被初始化。
说明
全局变量如果在同一项目内,就是可以由多个文件共享的变量。只要未被Preserve选项声明,每次从运行窗口和操作员窗口起动函数时,该变量都将被清除。
有关全局变量的初始化,请参阅以下手册。
《Epson RC+ 用户指南 - 变量的初始化》
如果被Preserve选项声明,即使关闭控制器电源,也将保持其值。
保存的全局变量还可以在RC+ API选项中使用。
请按照下例所示,全局变量名以词头"g_" 为开始,以易于在程序中识别。
如果Preserve、Static或NonStatic均未声明,则将遵循控制器的环境设置“在函数启动时初始化全局变量”。
Global Long g_PartsCount
参阅
Boolean、Byte、Double、Int32、Int64、Integer、Long、Real、Short、String、UByte、UInt32、UInt64、UShort
Global使用示例
下述为2个不同的程序文件。在最初的文件中,定义并初始化了几个全局变量。在下一个文件中使用这些全局变量。
FILE1 (MAIN.PRG)
Global Integer g_Status
Global Real g_MaxValue
Function Main
g_Status = 10
g_MaxValue = 1.1
.
.
Fend
Function Test
Print "status1 =" , g_Status
Print "MaxValue =" , g_MaxValue
.
.
Fend