Domanda

Esiste un'istruzione CIL per scambiare i primi due elementi nello stack?

È stato utile?

Soluzione

Non c'è scambio di singole istruzioni. Tuttavia, utilizzando stloc , pop e ldloc , dovresti essere in grado di realizzare il tuo scambio.

Altri suggerimenti

No. L'unico modo per scambiare elementi è far apparire i due elementi principali ai locali, quindi spingerli in ordine inverso.

Guardando un elenco di istruzioni CIL non sembra esserci un'unica istruzione che scambia i due elementi nella parte superiore della pila. Dovrai farlo nel vecchio modo pop / push.

Per riferimento futuro, è possibile creare un assembly che fa ciò per cui si desidera apprendere l'IL, quindi visualizzare l'assembly in Reflector. È possibile selezionare la lingua in cui si desidera inserire il codice e IL è una delle opzioni. L'ho fatto quando ho cercato di capire come codificare un metodo dinamico ...

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top