【问题标题】:option strict question选项严格问题
【发布时间】:2010-08-03 21:51:30
【问题描述】:

不允许后期绑定,这就是我们想要的。

根据我们的程序是在 LAN 还是 Internet 上运行,我们需要将对象调暗为两种类型之一。 我们使用 if...then 语句来确定我们是在 LAN 还是 Internet 上运行。

当我们在 if...then 语句中声明我们的对象时,我们已经在错误的范围内声明并且不能使用该对象。 当我们将其声明为“Object”类型并在 if...then 语句中使用 DirectCast 时,我们会收到后期绑定错误。

我们如何在不关闭 Option Strict 的情况下解决这个问题?

【问题讨论】:

    标签: vb.net


    【解决方案1】:

    我没有使用过 vb.net - 所以请考虑来源。但是您不能将每个类型声明为另一种类型的子类,并将该超类类型作为对象的声明类型吗?

    【讨论】:

      【解决方案2】:

      据我所知,这基本上就是我尝试使用 Object 类进行变量初始化时所做的事情。 但是,当我尝试使用 DirectCast 将其缩小到我需要的类型时,它仍然会引发后期绑定错误。

      【讨论】:

      • Carl 正在谈论使用inheritance。你根本不需要投射。你不能把你需要的所有功能都放在超类(你继承自的类)中吗?
      猜你喜欢
      • 2022-09-26
      • 1970-01-01
      • 1970-01-01
      • 2017-05-26
      • 1970-01-01
      • 2013-11-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多