Language(语言)
Allow Late Binding(允许后期绑定)
编译器选项:lb
解释:允许对 OBJECT 和 USUAL 类型的表达式进行属性访问和方法调用。
对于 VFP 来说,通常使用的是后期绑定,因此,在 X# 中,如果使用 Visual FoxPro 方言,此选项通常选择比不选择好。
Allow Named Arguments(允许命名参数)
编译器选项:namedargs
解释:Core 方言默认不选择,其他方言默认选择。更改方言也会自动更改此设置。
Allow Unsafe Code(允许不安全代码)
编译器选项:unsafe
解释:不安全代码(Unsafe Code)指需要显式启用指针操作和直接内存访问的代码。如果项目中可能存在这样的代码,最好还是启用这个选项。
Case Sensitive(大小写敏感)
编译器选项:cs
解释:X# 作为一个兼容 XBase 的 .NET 语言,允许代码不区分大小写。但是其他的 .NET 语言,例如 C# 则必须区分大小写。因此,如果你单纯的使用 X# ,理论上是不需要选择此选项的。但是,仅仅从代码的易读性来说,区分大小写的代码更容易阅读。况且,我相信,在实际应用中,很可能在一个解决方案中不仅仅使用 X#,此时,就必须遵循其他 .NET 语言的要求,区分大小写。
Initialize Local variables(初始化局部变量)
编译器选项:initlocals
解释:用于自动初始化所有局部变量,并抑制编译器对未初始化局部变量的警告。
为了更容易的记忆,你可以认为它是为了兼容 Visual FoxPro 而设置。因为在 VFP 中,所有定义的局部变量的初始值都是 .F.
Overflow Exceptions(溢出异常)
编译器选项:ovf
解释:这是源于 Vulcan.Net 的一个选项。它存在的理由只是因为 Vulcan.Net 中也有这个选项。
Use Zero Based Arrays(使用基于 0 的数组)
编译器选项:az
解释:在 VFP 中,数组的第一个元素的索引编号是 1 。X# 的 Visual ForPro 方言,建议忽略此选项。
Enforce SELF(强制 SELF)
编译器选项:enforceself
解释:选中后,类内对方法和字段/属性的所有引用都应以 SELF(或 SUPER)作为前缀。
通常情况下,你所编写的自定义方法如果和系统内置函数重名时才应该关注此选项。对于 Visual FoxPro 方言来说,也是如此,但是前缀可以不是 self 而是 this 。
Allow DOT for instance members(允许成员实例使用 DOT<.>)
编译器选项:allowdot
解释:作为具有 VFP 技术背景的开发人员来说,选择就对了,这样才能使用熟悉的 VFP 写法来书写 X# 程序。
未完待续......