加载中…
个人资料
会飞的路人
会飞的路人
  • 博客等级:
  • 博客积分:0
  • 博客访问:85,425
  • 关注人气:7
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

C# 使类拥有显式和隐式类型转换功能

(2013-04-22 10:08:50)
标签:

c

类型转换

分类: C#技巧
C#中系统给出的系统类型都有显示或者隐式类型转换,那么我们在设计自己的类的时候也可以自己设计成有这么一个功能,这篇就总结一下C#中类型转换的规律,C#中的继承有自动提供类型转换功能,因为它们是继承的关系,但是如果是两个不同的类需要实现这种功能,就需要我们自己写逻辑了。
下面举一个例子来说明一下C#中的类型转换,正方形和长方形的相互转换C# <wbr>使类拥有显式和隐式类型转换功能
    这里就是提供的两个不想关类型的编写,很简单,重点看类型转换部分,在Rectangle里面声明了隐式转换,用Implicit 和operator因为用到operator,所有要是静态Static的。在Square里面声明了显式转换,显式转换只不过是更改了关键字变为Explicit,operator后面是转换以后的类型,在一个类型声明显式转换,当然是允许别的类型转换为本类型,所以这里是Square,括号里面是需要转换的类型,这里给了Rectangle类型作为参数类型传进来。
    有一点要注意的是,一个类中不能同时写显式和隐式声明,只能是其中一个,但是如果声明了隐式的转换,那么其对应的显示转换也会自动提供。如果声明了显式转换,其对应的隐式转换不会提供的。好了下面看客户端代码:C# <wbr>使类拥有显式和隐式类型转换功能

C# <wbr>使类拥有显式和隐式类型转换功能

好了不多说了,大概就这样了

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有