C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


■103344 / )  異なるEnumを=で比較できないようにする
□投稿者/ かば (1回)-(2024/10/14(Mon) 18:51:24)

分類:[.NET 全般] 

2024/10/14(Mon) 18:52:12 編集(投稿者)
VB.NET2015を使っております。

    Public Enum Enum1
        Square = 1
        Circle = 2
        Other = 3
    End Enum

    Public Enum Enum2
        Square = 4
        Circle = 8
        Triangle = 12
    End Enum


という二つのEnumを宣言したとします。


そしれ、これら別々の変数として宣言したとします。

        Dim V1 As Enum1 = Enum1.Circle

        Dim V2 As Enum2 = Enum2.Square

この状態で以下のようなIf文を書いても
エラーとはならず、ビルドできてしまいます。

        If V1 = Enum2.Square Then


        End If

        If V1 = V2 Then


        End If

これらは違う変数なので、比較できてしまうと
バグの温床となってしまいます。

Option Strict On
など試してみたのですが、やはりビルドできてしまいます。

どうにか区別できるようにする方法はないでしょうか?




返信 編集キー/


管理者用

- Child Tree -