最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

implicit關(guān)鍵字做自定義類型隱式轉(zhuǎn)換的方法

 更新時間:2015年08月06日 16:09:39   作者:大濤哥  
implicit 關(guān)鍵字用于聲明隱式的用戶定義類型轉(zhuǎn)換運算符。如果轉(zhuǎn)換過程可以確保不會造成數(shù)據(jù)丟失,則可使用該關(guān)鍵字在用戶定義類型和其他類型之間進(jìn)行隱式轉(zhuǎn)換,這篇文章就給大家詳細(xì)介紹implicit關(guān)鍵字做自定義類型隱式轉(zhuǎn)換的方法,需要的朋友可以參考下

 隱式轉(zhuǎn)換可以通過消除不必要的類型轉(zhuǎn)換來提高源代碼的可讀性。但是,因為隱式轉(zhuǎn)換不需要程序員將一種類型顯式強制轉(zhuǎn)換

為另一種類型,所以使用隱式轉(zhuǎn)換時必須格外小心,以免出現(xiàn)意外結(jié)果。一般情況下,隱式轉(zhuǎn)換運算符應(yīng)當(dāng)從不引發(fā)異常并且

從不丟失信息,以便可以在程序員不知曉的情況下安全使用它們。

在C#中,implicit關(guān)鍵字可以用來做自定義類型隱式轉(zhuǎn)換。下面給個例子來說明。

 定義一個Point類,表示一個點:

復(fù)制代碼 代碼如下:

public class Point
  {
    public double X { get; set; }
    public double Y { get; set; }
  }

  再在Point類中定義一個靜態(tài)方法,用于由字符串隱式轉(zhuǎn)換為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;
  }
 }

使用的過程非常簡單,就跟我們平時的隱式轉(zhuǎn)換一樣:   

復(fù)制代碼 代碼如下:

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

 注意,盡量隱式轉(zhuǎn)換過程中不會出錯,或者能處理異常情況。否則請使用explicit變?yōu)閺娭妻D(zhuǎn)換。

 以上就是implicit關(guān)鍵字做自定義類型隱式轉(zhuǎn)換的方法,希望對大家有所幫助。

 

相關(guān)文章

  • C#實現(xiàn)封面圖片生成器的示例代碼

    C#實現(xiàn)封面圖片生成器的示例代碼

    這篇文章主要為大家詳細(xì)介紹了如何利用C#實現(xiàn)簡單的封面圖片生成器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • 在c#中把字符串轉(zhuǎn)為變量名并獲取變量值的小例子

    在c#中把字符串轉(zhuǎn)為變量名并獲取變量值的小例子

    這篇文章介紹了在c#中把字符串轉(zhuǎn)為變量名并獲取變量值的小例子,有需要的朋友可以參考一下
    2013-09-09
  • C#刪除整個目錄及子目錄的方法

    C#刪除整個目錄及子目錄的方法

    這篇文章主要介紹了C#刪除整個目錄及子目錄的方法,涉及C#操作目錄刪除的相關(guān)技巧,需要的朋友可以參考下
    2015-04-04
  • C# WinForm-Timer控件的使用

    C# WinForm-Timer控件的使用

    這篇文章主要介紹了C# WinForm-Timer控件的使用,幫助大家更好的理解和學(xué)習(xí)c# winform,感興趣的朋友可以了解下
    2020-11-11
  • Unity游戲開發(fā)中的中介者模式的應(yīng)用與實現(xiàn)

    Unity游戲開發(fā)中的中介者模式的應(yīng)用與實現(xiàn)

    中介者模式是Unity游戲開發(fā)中常用的設(shè)計模式之一,用于減少對象之間的直接耦合,通過引入中介者來協(xié)調(diào)對象之間的交互。通過中介者模式,游戲?qū)ο罂梢愿屿`活地進(jìn)行交互和協(xié)同工作,降低系統(tǒng)復(fù)雜度,使代碼更加易于維護(hù)和擴(kuò)展
    2023-05-05
  • C#利用QrCode.Net生成二維碼(Qr碼)的方法

    C#利用QrCode.Net生成二維碼(Qr碼)的方法

    QrCode.Net是一個使用C#編寫的用于生成二維碼圖片的類庫,使用它可以非常方便的為WinForm、WebForm、WPF、Silverlight和Windows Phone 7應(yīng)用程序提供二維碼編碼輸出功能。可以將二維碼文件導(dǎo)出為eps格式
    2016-12-12
  • 詳解如何在C#中使用投影(Projection)

    詳解如何在C#中使用投影(Projection)

    這篇文章主要介紹了詳解如何在C#中使用投影(Projection),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • C#對WPF數(shù)據(jù)綁定的菜單插入Seperator分隔

    C#對WPF數(shù)據(jù)綁定的菜單插入Seperator分隔

    這篇文章介紹了C#對WPF數(shù)據(jù)綁定的菜單插入Seperator分隔的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06
  • C#使用linq計算執(zhí)行元素在列表中出現(xiàn)次數(shù)的方法

    C#使用linq計算執(zhí)行元素在列表中出現(xiàn)次數(shù)的方法

    這篇文章主要介紹了C#使用linq計算執(zhí)行元素在列表中出現(xiàn)次數(shù)的方法,涉及C#使用linq擴(kuò)展進(jìn)行列表查詢的技巧,需要的朋友可以參考下
    2015-04-04
  • C#集成DeepSeek模型實現(xiàn)AI私有化的流程步驟(本地部署與API調(diào)用教程)

    C#集成DeepSeek模型實現(xiàn)AI私有化的流程步驟(本地部署與API調(diào)用教程)

    本文主要介紹了C#集成DeepSeek模型實現(xiàn)AI私有化的方法,包括搭建基礎(chǔ)環(huán)境,如安裝Ollama和下載DeepSeek?R1模型,客戶端?ChatBox?AI?接入?DeepSeek?的步驟,以及?C#?調(diào)用?DeepSeek?API?的示例代碼,并總結(jié)了其在實際項目中的應(yīng)用價值,需要的朋友可以參考下
    2025-03-03

最新評論

贵定县| 河北区| 古田县| 杭州市| 广西| 筠连县| 铁力市| 元阳县| 孝感市| 宽城| 武汉市| 武胜县| 洛南县| 平潭县| 淳化县| 宁武县| 漳浦县| 浦县| 白玉县| 云龙县| 德格县| 晋宁县| 宁远县| 苍山县| 奉贤区| 华安县| 鸡西市| 枣强县| 杂多县| 资阳市| 聊城市| 阿城市| 顺昌县| 运城市| 乌什县| 郴州市| 洮南市| 米林县| 讷河市| 宜宾市| 东山县|