成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C#基于Object解決方案

開發 后端
這里介紹C#基于Object解決方案,您可以通過提供類型特定的(因而是類型安全的)高性能堆棧來克服上述兩個問題。對于整型,可以實現并使用 intstack。

C#語言有很多值得學習的地方,這里我們主要介紹C#基于Object解決方案,包括介紹編譯器允許在任何類型和Object之間進行強制類型轉換等方面。

C#基于Object解決方案存在兩個問題。第一個問題是性能。在使用值類型時,必須將它們裝箱以便推送和存儲它們,并且在將值類型彈出堆棧時將其取消裝箱。裝箱和取消裝箱都會根據它們自己的權限造成重大的性能損失,但是它還會增加托管堆上的壓力,導致更多的垃圾收集工作,而這對于性能而言也不太好。即使是在使用引用類型而不是值類型時,仍然存在性能損失,這是因為必須從 Object 向您要與之交互的實際類型進行強制類型轉換,從而造成強制類型轉換開銷:

  1. Stack stack = new Stack();  
  2. stack.Push("1");  
  3. string number = (string)stack.Pop();  

C#基于Object解決方案的第二個問題(通常更為嚴重)是類型安全。因為編譯器允許在任何類型和Object之間進行強制類型轉換,所以您將丟失編譯時類型安全。例如,以下代碼可以正確編譯,但是在運行時將引發無效強制類型轉換異常:

  1. Stack stack = new Stack();  
  2. stack.Push(1);  
  3. //This compiles, but is not type safe, and will throw an exception:   
  4. string number = (string)stack.Pop();  

您可以通過提供類型特定的(因而是類型安全的)高性能堆棧來克服上述兩個問題。對于整型,可以實現并使用 intstack:

  1. public class IntStack  
  2. {  
  3. int[] m_Items;   
  4. public void Push(int item){...}  
  5. public int Pop(){...}  
  6. }   
  7. IntStack stack = new IntStack();  
  8. stack.Push(1);  
  9. int number = stack.Pop();  
  10.  
  11. //對于字符串,可以實現 stringstack:  
  12.  
  13. public class StringStack  
  14. {  
  15. string[] m_Items;   
  16. public void Push(string item){...}  
  17. public string Pop(){...}  
  18. }  
  19. StringStack stack = new StringStack();  
  20. stack.Push("1");  
  21. string number = stack.Pop();  

【編輯推薦】

  1. C# lock關鍵字敘述
  2. C#.Net FrameWork簡介
  3. C# new和override簡單描述
  4. C#值類型和引用類型淺談
  5. C#標識符簡單分析
責任編輯:佚名 來源: CSDN
相關推薦

2010-08-05 10:05:14

C#枚舉值

2010-02-05 10:16:35

C++斷點無效

2009-09-24 15:45:23

2009-08-26 10:40:39

C# Static H

2009-03-18 09:26:23

Winform多線程C#

2009-08-04 15:18:11

C# Actor

2009-04-02 08:23:24

ARM上網本移動OS

2011-04-29 14:53:56

SimpleFrame

2023-06-21 11:27:53

2020-12-18 17:27:20

物聯網資產跟蹤IOT

2018-12-03 12:17:27

Semptian解決方案

2012-05-27 16:21:31

IDC華為

2018-12-03 11:59:42

Inventec解決方案

2018-12-03 12:13:21

Mellanox解決方案

2018-12-03 12:26:30

YADRO解決方案

2009-12-11 15:41:18

華為路由器接入

2023-04-28 07:37:37

混合云管理云原生

2019-01-18 05:22:39

區塊鏈智能合約網絡安全

2024-07-12 11:35:20

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人久久久 | 一级黄色录像片子 | 91视频大全| 亚洲综合三区 | 中日韩av | 午夜在线 | 日本一区二区三区四区 | 99免费精品 | 久久久精品影院 | 一级毛片在线播放 | 在线中文视频 | 国产999精品久久久 日本视频一区二区三区 | 一区二区三区四区在线视频 | 四虎成人精品永久免费av九九 | 亚洲人成在线播放 | 91精品久久久久久久久久入口 | 久久精品亚洲欧美日韩久久 | 中文字幕一区在线观看视频 | 一区二区三区久久 | 午夜欧美a级理论片915影院 | 亚洲国产成人av好男人在线观看 | 在线免费观看视频黄 | 国产一区二区久久 | 国产黄色精品在线观看 | 久久伊人精品 | 亚洲精精品 | 午夜影院污 | 成人小视频在线 | 中文字幕的av | 国产亚洲精品久久午夜玫瑰园 | 成人福利在线观看 | 91视频. | 久久久久久久一区二区三区 | 欧美视频免费在线 | 国产精品毛片一区二区在线看 | 成人免费av | 午夜午夜精品一区二区三区文 | 久久久一区二区三区 | 国产乱码精品一区二区三区五月婷 | 久久精品国产99国产 | 久久精品成人热国产成 |