11 Stimmen

ILGenerator: So fügen Sie einen booleschen Wert auf den Stapel hinzu

Hier ist der Weg, wie ich den Gleitkommawert auf den Stapel legen kann (in C#):

ILGenerator gen = method.GetILGenerator();
gen.Emit(OpCodes.Ldc_R4, (float)12.5);

Wie kann ich den Boolean-Wert auf den Stapel legen, indem ich die Emit-Methode verwende?

25voto

Sam Harwell Punkte 94511

Es gibt keine Darstellung eines booleschen Werts auf dem Auswertungsstapel. Die Typen bool, char, byte, ushort, uint und ihre vorzeichenbehafteten Varianten werden alle als vorzeichenbehaftete 4-Byte-Ganzzahl (i4) dargestellt.

Wahr:

ldc.i4.1

Falsch:

ldc.i4.0

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X