0

次があるとします。

Class Outer
   Public Shared Index As Integer
   Class Inner
      Private Index As Integer
      Public Shared Sub Test()
         ' how do I refer to the parent's Index?
      End Sub
   End Class
End Class

次に、MyBase派生していないため使用できず、テストが共有されているため、親のインスタンスをインナーのコンストラクターに渡すことができません...インナーのOuter.Index時点でアウターがまだ存在しないため、それを参照することもできませんもちろん、コンパイルされると、単純な参照では、参照されるフィールドは内部で定義されたものになります...どうすればいいですか?

4

1 に答える 1

0

あなたの質問を読み直した後、私は以前の答えを削除しました。

VS2010で次のクラスをテストしました。

Class Outer
    Public Shared Index As Integer
    Class Inner
        Private Index As Integer
        Public Shared Sub Test()
            Debug.WriteLine(Outer.Index)
        End Sub
    End Class
End Class

次に、テストする次のコードを追加しました。

    Outer.Index = 1
    Outer.Inner.Test()

このコードを実行すると、イミディエイトウィンドウに「1」が表示されます。

于 2012-07-25T19:12:02.970 に答える