尽管我主要是 C# 开发人员,但我正在为 VB.Net 应用程序提供支持。我遇到了我认为是“奇怪”的代码,因为我的 C# 思维模式告诉我代码是错误的,不应该编译,但它确实如此。我做了一个查找特定表单上的所有引用以查看它被使用的位置,并找到了对直接引用类的非分解方法而不实例化类的表单的引用。换句话说,我看到这样的代码:
FrmCareer.ShowDialog(careerId)
FrmCareer = Nothing
现在ShowDialog不是共享成员,它引用实例成员变量,所以我根本不希望智能感知列出ShowDialog方法。但它确实可以编译。谁能解释这里发生了什么?