通过 #pragma options 指令,您可以为一定范围的代码启用/禁用某些编译器选项。
#pragma options( "option", state )
注意:#pragma 指令必须出现在第一个实体之前或实体之间,不能出现在实体中间
"options "可以是下列选项之一(请注意,并非所有编译器选项都可以使用)
选项 |
描述 |
"az" |
基于零的数组 |
"allowdot" |
允许为实例成员添加点(.) |
"enforceoverride" |
强制使用 OVERRIDE 关键字 |
"enforceself" |
强制使用 SELF 访问字段/属性/方法 |
"fovf" |
溢出检查(与 "ovf "重复) |
"initlocals" |
初始化局部变量 |
"lb" |
允许后期绑定 |
"memvars" |
允许动态内存变量(PUBLIC、PRIVATE、MEMVA) |
"namedargs" |
不能使用 #pragma 关键字设置该选项 |
"ovf" |
溢出检查(与 "fovf "重复) |
"undeclared" |
允许未声明变量 |
"vo1" |
不能使用 #pragma 关键字设置该选项 |
"vo2" |
用空字符串初始化字符串变量 |
"vo3" |
所有实例成员都是虚拟的 |
"vo4" |
隐式有符号/无符号转换 |
"vo5" |
隐式 Clipper 调用约定 |
"vo6" |
隐式指针转换 |
"vo7" |
隐式强制转换和转换 |
"vo8" |
不能使用 #pragma 关键字设置该选项 |
"vo9" |
允许缺少返回语句或缺少返回值 |
"vo10" |
兼容 IIF 的行为 |
"vo11" |
兼容数值转换 |
"vo12" |
Clipper 整数除法 |
"vo13" |
兼容字符串比较 |
"vo14" |
将实数常量嵌入为 float |
"vo15" |
允许未类型化的局部(变量) |
"vo16" |
生成 Clipper 调用约定的默认构造函数 |
"vo17" |
与 Clipper/VO 兼容的 Begin Sequence .. End Sequence |
"fox2" |
与 Foxpro 兼容的数组处理 |
"xpp1" |
不能使用 #pragma 关键字设置该选项 |
State 可以是以下内容之一
•on
•off
•default
请注意,您还可以使用 `BEGIN CHECKED .. END` / `BEGIN UNCHECKED .. END` 来启用/禁用溢出检查。