4

public 定数宣言を持たないのに、なぜ form は public enum ブロックを持つことができるのですか?

また、フォームの宣言セクションにパブリック変数がある場合、アプリケーション全体で参照できますが、form1.var1 などのドット表記を使用する必要があります。

ただし、フォームの宣言に enum ブロックを配置すると、アプリケーションの残りの部分で参照できますが、ドット表記が前に付いていない場合に限ります。

列挙ブロックは、ドット表記なしで外部からのみ参照できる、または参照する必要があるフォーム上の唯一の構造ですか?

私が行方不明になっているこれに対する論理は何ですか?

4

2 に答える 2

4

ここでのロジックは、enum がtypeを定義するというものです。

型はどこでも使用しているため、型については既に知っています。クラスは型です。an Integer、 a Long、 a String、およびその他すべての組み込みデータ型も同様です。Typeまた、キーワードを使用してユーザー定義型を作成できます。例えば、

' Defines a new type User
Type User
    Name As String
    ID As Integer
    PhoneNumber As String
End Type

考えてみれば、これは理にかなっていることがわかります。列挙型を直接使用することはありません。むしろ、型として使用します。Integerまたは型の値を保持する変数を宣言するのと同じ方法で、その列挙型の値を保持する変数を宣言しますString

対照的に、定数は型ではありません。これは単なる通常の値であり、定数変数の値を変更できないことを除いて、通常の変数を宣言した場合と同じです。

型は、クラスの内部または外部のどこにでも定義できます。ただし、変数はクラス内またはモジュール内で定義する必要があります。

于 2013-04-07T10:59:44.663 に答える