MSIL实用指南-数据类型转换

Posted TKT2016

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MSIL实用指南-数据类型转换相关的知识,希望对你有一定的参考价值。

一、类的强制转换
1.转换成某个类
用Castclass指令。
实例代码:
ilGenerator.Emit( OpCodes.Castclass , typeof(ClassA) );

2.转换成某个值类型
用Unbox_Any指令。
实例代码:
ilGenerator.Emit( OpCodes.Unbox_Any , typeof(DateTime) );
ilGenerator.Emit( OpCodes.Unbox_Any , typeof(int) );

二、值类型的强制转换

1.转化为sbyte
用Conv_I1指令。

1.转化为sbyte
用Conv_I1指令。


2.转化为short
用Conv_I2指令。


3.转化为int
用Conv_I指令。

4.转化为long
用Conv_I8指令。

5.转化为float
用Conv_R4指令。

6.转化为double
用Conv_R8指令。

7.转化为byte
用Conv_U1指令。

8.转化为ushort
用Conv_U2指令。

9.转化为uint
用Conv_U指令。

10.转化为ulong
用Conv_U8指令。

以上是关于MSIL实用指南-数据类型转换的主要内容,如果未能解决你的问题,请参考以下文章

MSIL实用指南-局部变量的声明保存和加载

MSIL实用指南-生成for语句

MSIL实用指南-生成属性

MSIL实用指南-类相关生成

MSIL实用指南-方法的调用

MSIL实用指南-创建方法和定义参数