VB.NET中的共享方法无法处理这个原因?

前端之家收集整理的这篇文章主要介绍了VB.NET中的共享方法无法处理这个原因?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
(我试过 this question,但是这段代码可以更好地隔离问题.)

我有这个代码

Public Shared Sub PopulateTextFields(ByRef stuffList As List(Of Stuff))
    Dim aStuff As New Stuff
    For Each aStuff In stuffList
        DoStuff(aStuff)
    Next
End Sub

Private Sub DoStuff(ByRef theStuff as Stuff)
    ....
End Sub

我得到以下错误突出显示DoStuff(aStuff):

Cannot refer to an instance member of
a class from within a shared method or
shared member initializer without an
explicit instance of the class.

在编写Dim语句时,我没有得到Stuff的显式实例吗?

不明白什么是错的.提前致谢!

我认为问题在于子程序DoStuff.如果你的潜艇都在同一个类中,你试图从PopulateTextFields中引用DoStuff,这是一个共享子.

为了实现这一点,您还需要将DoStuff声明为Shared.

猜你在找的VB相关文章