• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C#教程 > implicit关键字做自定义类型隐式转换的方法

implicit关键字做自定义类型隐式转换的方法

作者:大涛哥 字体:[增加 减小] 来源:互联网 时间:2017-05-28

大涛哥 通过本文主要向大家介绍了implicit,implicit是什么意思,implicit none,implicit declaration,implicit body force等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

 隐式转换可以通过消除不必要的类型转换来提高源代码的可读性。但是,因为隐式转换不需要程序员将一种类型显式强制转换

为另一种类型,所以使用隐式转换时必须格外小心,以免出现意外结果。一般情况下,隐式转换运算符应当从不引发异常并且

从不丢失信息,以便可以在程序员不知晓的情况下安全使用它们。

在C#中,implicit关键字可以用来做自定义类型隐式转换。下面给个例子来说明。

 定义一个Point类,表示一个点:

public class Point
  {
    public double X { get; set; }
    public double Y { get; set; }
  }
</div>

  再在Point类中定义一个静态方法,用于由字符串隐式转换为Point类型:

public class Point
 {
  public double X { get; set; }
  public double Y { get; set; }
  public static implicit operator Point(string constValue)
  {
   var result = new Point();
   try
   {
    var arPoint = constValue.Split(new[] {","}, StringSplitOptions.RemoveEmptyEntries);
    result.X = Convert.ToDouble(arPoint[0]);
    result.Y = Convert.ToDouble(arPoint[1]);
   }
   catch
   {
    result.X = 0;
    result.Y = 0;
   }
   return result;
  }
 }
</div>

使用的过程非常简单,就跟我们平时的隐式转换一样:   

Point p = "3,4.5";
      Console.WriteLine("X:{0}, Y:{1}", p.X, p.Y);
</div>

 注意,尽量隐式转换过程中不会出错,或者能处理异常情况。否则请使用explicit变为强制转换。

 以上就是implicit关键字做自定义类型隐式转换的方法,希望对大家有所帮助。

 

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • implicit关键字做自定义类型隐式转换的方法

相关文章

  • 2017-05-28C# URL短地址压缩算法及短网址原理解析
  • 2017-05-28C#实现简单获取扫码枪信息代码
  • 2017-05-28轻松学习C#的运算符
  • 2017-05-28C#引用访问权限分析
  • 2017-05-28支持windows与linux的php计划任务的实现方法
  • 2018-01-06C#--微信小程序-跳一跳辅助工具源码
  • 2017-05-28unity实现多点触控代码
  • 2017-05-28C#基于基姆拉尔森算法计算指定日期是星期几的方法
  • 2017-05-28C#实现对用户输入数据进行校验的类实例
  • 2017-05-28C#实现把科学计数法(E)转化为正常数字值

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • C# 设计模式系列教程-观察者模式
    • C#判断字符串是否是int/double(实例)
    • 基于动态修改App.Config与web.Config的使用详解
    • des加密解密源码 C# key值问题分析
    • Winform实现调用asp.net数据接口实例
    • C#使用foreach循环遍历数组完整实例
    • c#图片缩放图片剪切功能实现(等比缩放)
    • C#实现远程关闭计算机或重启计算机的方法
    • .Net Winform开发笔记(一)
    • c# 应用NPOI获取Excel中的图片,保存至本地的算法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有