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指令。

posted @ 2018-04-23 14:07  Z语言  阅读(219)  评论(0编辑  收藏  举报