Język

OpCodes.Stloc Pole

Definicja

Wyświetla bieżącą wartość z góry stosu oceny i przechowuje ją na liście zmiennych lokalnych w określonym indeksie.

public: static initonly System::Reflection::Emit::OpCode Stloc;
public static readonly System.Reflection.Emit.OpCode Stloc;
 staticval mutable Stloc : System.Reflection.Emit.OpCode
Public Shared ReadOnly Stloc As OpCode 

Wartość pola

Uwagi

W poniższej tabeli wymieniono format zestawu szesnastkowy i Microsoft Intermediate Language (MSIL) instrukcji wraz z krótkim podsumowaniem referencyjnym:

Format Format zestawu Opis
FE 0E <unsigned int16> stloc index Tworzy wartość ze stosu i przechowuje ją w zmiennej indexlokalnej .

Zachowanie przejściowe stosu w kolejności sekwencyjnej jest następujące:

  1. Wartość jest wyskoczona ze stosu i umieszczona w zmiennej indexlokalnej .

Instrukcja stloc wyskakuje górną wartość z stosu oceny i przenosi ją do lokalnego numeru indexzmiennej , gdzie zmienne lokalne są numerowane 0 do wewnątrz. Typ wartości musi być zgodny z typem zmiennej lokalnej, jak określono w podpisie lokalnym bieżącej metody.

Przechowywanie w ustawieniach lokalnych, które przechowują wartość całkowitą mniejszą niż 4 bajty, powoduje obcięcie wartości podczas przechodzenia ze stosu do zmiennej lokalnej. Wartości zmiennoprzecinkowe są zaokrąglane z ich natywnego rozmiaru (typu F) do rozmiaru skojarzonego z argumentem.

Poprawne instrukcje Microsoft Intermediate Language (MSIL) wymagają, aby index być prawidłowym indeksem lokalnym. Instrukcje stlocindex muszą mieścić się w zakresie od 0 do 65534 włącznie (w szczególności 65535 jest nieprawidłowe). Przyczyną wykluczenia 65535 jest pragmatyczne: prawdopodobne implementacje będą używać liczby całkowitej 2-bajtowej do śledzenia zarówno indeksu lokalnego, jak i całkowitej liczby lokalnych dla danej metody. Jeśli indeks 65535 został prawidłowy, wymagałoby to szerszej liczby całkowitej do śledzenia liczby miejsc lokalnych w takiej metodzie.

Emit Następujące przeciążenia metody mogą używać stloc kodu opcode:

Dotyczy