c语言类型转换,浅谈c#中的类型转换问题

类型转换问题的本质其实就兼容性的问题!一般情况类型转换分为两种——隐式和显式转换!鄙人的一点感悟就是有这么个原则“对于数值类型,内存空间大的永远可以接纳内存空间小的,即所占内存空间小的类型可以转换为所占内存空间大的,但是反之可能会出现不可预知的错误!,对于类类型,则是基类的派生类的对象永远可以转换为基类的对象类型”以c#中的类型转换为例,1,假如类B继承与类A,那么B的对象赋值给A的对象就是可以的,当然这种情况对于继承接口也是成立 的,c#中的拆箱和装箱问题其实就是这种类型转换。2,c#中的数值类型之间的转换,那个就是主要考虑变量的所占内存的大小,很简单的哦,有一定程序基础的都应该会明白。3,谈一下c#程序中的convert方法和parse方法,这两个方法也可以实现类型转换,而且我们会经常用到,但是这两种方法和上面谈到的是不一样的,他们属于对象本身自带的一个方法,其实就像大雨一个自定义函数,但是这两种方法又有一些区别,convert方法的封装更加完善一些,可以实现几乎所有类型之间的转换,它属于n对n的, 每一次转换的时候它都需要检索到现有类型和目标类型,然后才可以进行转换,但是parse方法则不然,它属于1对n的,即该方法只能进行string和其他类型之间的一些转换(主要是int ,double ,bool,string ),但是我们一般最好用parse方法,当然是在可以的情况下,因为这个方法的效率要高,为什么呢?大家可以思考一下!嘿嘿,
Tags:  sql类型转换 强制类型转换 c强制类型转换 c类型转换 c语言类型转换

延伸阅读

最新评论

发表评论