VB 中的选项类型
Option type in VB
是否有我们可以在 VB 中使用的 Option
类型?我现在正在 VB 进行一个项目,我正在考虑一种方法来摆脱所有 if
检查 null
/Nothing
并返回 null
/Nothing
。
如果我可以拥有那种类型的东西,我可以静态地确保一个方法 returns 一个 option
而不是通过返回 null 来让调用者感到惊讶。
这将使代码更不容易出错,并且阅读起来会更好。
简答:
没有
长答案:
对正确选项类型或一般代数数据类型的支持不会很快出现在 C#/VB.Net 中。
计划在即将推出的 C# 7 中支持不可为 null 的类型,它们不完全相同但仍允许编译时空值检查。据我所知,尚未确认 VB 15 将包含相同的功能。
您可以自己想出一些反 NullReferenceException
技巧来最大限度地减少意外传递 null 的可能性,但要使它们在编译时 100% 安全是不可能的暂时.
是否有我们可以在 VB 中使用的 Option
类型?我现在正在 VB 进行一个项目,我正在考虑一种方法来摆脱所有 if
检查 null
/Nothing
并返回 null
/Nothing
。
如果我可以拥有那种类型的东西,我可以静态地确保一个方法 returns 一个 option
而不是通过返回 null 来让调用者感到惊讶。
这将使代码更不容易出错,并且阅读起来会更好。
简答:
没有
长答案:
对正确选项类型或一般代数数据类型的支持不会很快出现在 C#/VB.Net 中。
计划在即将推出的 C# 7 中支持不可为 null 的类型,它们不完全相同但仍允许编译时空值检查。据我所知,尚未确认 VB 15 将包含相同的功能。
您可以自己想出一些反 NullReferenceException
技巧来最大限度地减少意外传递 null 的可能性,但要使它们在编译时 100% 安全是不可能的暂时.