前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >XSharp(X#)的编译器选项(三)

XSharp(X#)的编译器选项(三)

作者头像
firstxinjie
发布2025-03-24 18:19:00
发布2025-03-24 18:19:00
690
举报
文章被收录于专栏:X#(XSharp)X#(XSharp)

Enforce VIRTUAL/OVERRIDE(强制 VIRTUAL/OVERRIDE)

编译器选项:enforceoverride

解释:如果选中,则在覆盖父类中的方法或定义可被覆盖的新方法时,必须在方法前加上 VIRTUAL 和/或 OVERRIDE 字样。

在 VFP 中,如果一个类被子类化,那么,你可以选择在子类中重写父类中的“同名”方法。这似乎稀松平常。但是,在 .NET(C#) 中,如果想在子类中重写父类“同名”方法,默认是有限制的。通过在方法中添加 VIRTUAL 和/或 OVERRIDE 修饰符,就可以像 VFP 那样在子类中重写和父类。X# 提供这个编译器选项,应该是让使用者自行选择,是延续 VFP 中的习惯,还是遵循 .NET 的方式。

Allow Old Style assignments(允许旧式赋值)

编译器选项:allowoldstyleassignments

解释:如果选中,则允许在赋值中使用单个等号运算符 (=)。否则,必须使用冒号等号运算符(:=)。

Visual FoxPro 方言的默认值是选择,其他方言的默认值是不选择。

Modern Syntax(现代语法)

编译器选项:modernsyntax

解释:现代语法会禁用某些传统的功能。如果你摆脱不了 VFP 的习惯,那么还是不要选择这个选项。

Enable Memvar support(启用内存变量支持)

编译器选项:memvar

解释:启用对内存变量(MEMVAR、PUBLIC、PRIVATE 和 PARAMETERS)的支持。请注意,Core 和 Vulcan 方言不支持此功能。

在 Visual FoxPro 方言中,如果想让宏编译器看到局部变量,也需要使用该选项。

Enable Undeclared variables support(启用未声明变量支持)

编译器选项:undeclared

解释:启用对未声明变量的支持(这些变量被解析为 MEMVAR)。请注意,这需要同时启用 /memvar 。

你在 VFP 中使用变量习惯在使用前先定义变量吗?我也不是 100% 的做到这一点。所以,选择就对了。

Enable Implicit Namespace lookup(启用隐式命名空间查询)

编译器选项:ins

解释:从文档描述看,它似乎是一个和 Visual FoxPro 方言无关的编译器选项。

Prefix classes with default Namespace(使用默认命名空间为类加前缀)

编译器选项:ns

解释:对于名称中没有明确命名空间的已声明类型(类、接口、结构、委托),将使用默认命名空间(即在 Application 选项卡上指定的默认命名空间)。

Suppress standard header file(禁止标准头文件)

编译器选项:nostddefs

解释:对于具有 VFP 技术背景的开发人员来说,选择它真的不是一个明智的选择。除非,你真的像精通 VFP 一样精通 X# 。我相信,事实上,在国内,敢说自己精通 VFP 的都是凤毛麟角。

未完待续......

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-03-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 xinjie的VFP 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档