次の方法で共有


OpCodes.Brfalse フィールド

value が false 、null 参照 (Visual Basic の場合は Nothing)、または 0 の場合は、ターゲット命令に制御を転送します。

Public Shared ReadOnly Brfalse As OpCode
[C#]
public static readonly OpCode Brfalse;
[C++]
public: static OpCode Brfalse;
[JScript]
public static var Brfalse : OpCode;

解説

命令の 16 進数の形式、MSIL (Microsoft Intermediate Language) アセンブリ形式、および簡単な説明の一覧を次の表に示します。

形式 アセンブリ形式 説明
39 < int32 > brfalse target

brnull target

brzero target

false の場合は、指定したオフセットでターゲット命令に分岐します。

スタックの遷移動作を順番に示すと、次のようになります。

  1. 直前の演算によって value がスタックにプッシュされます。
  2. value がスタックからポップされます。value が false の場合は、target に分岐します。

brfalse 命令 (およびそのエイリアスである brnullbrzero) は、value (int32int64 、オブジェクト参照 O 、マネージ ポインタ & 、遷移ポインタ *natural int の各型) が 0 (false) である場合に、指定したターゲット命令に制御を転送します。value が 0 以外 (true) である場合は、次の命令で実行が継続されます。

ターゲット命令は、現在の命令に続く次の命令の先頭からの 4 バイト符号付きオフセットとして表されます。

ターゲット命令に 1 つ以上のプリフィックス コードがある場合は、最初のプリフィックスだけに制御を転送できます。この命令では、try、catch、filter、finally の各ブロックの内外への制御の転送は実行できません。

brfalse オペコードを使用できる Emit コンストラクタ オーバーロードを次に示します。

  • ILGenerator.Emit(OpCode, Label)

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

OpCodes クラス | OpCodes メンバ | System.Reflection.Emit 名前空間