自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

為你解疑C++ CLR和ISO C++原理區(qū)別

開發(fā) 后端
文章主要講解一下C++ CLR和ISO C++的區(qū)別,從中讓你收獲到什么叫“引用類型”和“數(shù)值類型",還為你推薦比較好的兩本書和一個(gè)視頻推薦給大家。

C++ CLR也很長時(shí)間了,終于讓我明白了ISO C++與C++ CLR的區(qū)別,下面就讓我簡(jiǎn)述一下我學(xué)習(xí)中痛苦和收獲吧。
通過學(xué)習(xí)WinForm編程,嚴(yán)格的說我并不是WinForm編程,因?yàn)槲业脑瓉淼某绦蚶镉兄罅康腎SO C++,完全用C++ CLI來編程我可承受不起,同時(shí)由于是自學(xué),幾乎用了很長時(shí)間我才明白ISO C++與C++ CLR的區(qū)別,同時(shí)由于國內(nèi)翻譯過來的書太慢了,我看到的C++CLR都是VS2003的老語法,而網(wǎng)上下載的微軟的視頻卻是VS2005,很多語法規(guī)則都變得面目全非,終于在網(wǎng)上找了一本VS2005 的中文電子書,我才明白這兩者的區(qū)別,vs2003怪異的__gc,以及在2005里面我覺得很酷,但是不能不說更怪異得^(追蹤句柄),傳說中的tracking handle,可以說真是痛苦。

更痛苦的是C++ CLR怪異的語法不說,最糟糕的是我要用到我以前的類,同時(shí)又要用到winform的界面,還有.net類庫中的FileStream流以及MemoryStream,和ADO.net,這里面涉及到在非托管的類里面聲明托管的對(duì)象,于是更怪異的語法gcroot<>就出來了,以及各種怪異得錯(cuò)誤就出來了,幾乎我每寫5行程序,編譯的時(shí)候就會(huì)報(bào)錯(cuò),那個(gè)心情可真是一個(gè)滄桑??梢哉f當(dāng)時(shí)我認(rèn)為在微軟部門里最笨的就是編寫C++.net編譯器,這群人,怎么編寫一個(gè)這么麻煩東西,在非托管的代碼和托管的代碼中,經(jīng)常會(huì)出現(xiàn)這樣那樣怪異的錯(cuò)誤,還有在*,^,以及普通值變量中,這轉(zhuǎn)型的過程還真是異常的痛苦。

收獲

雖然轉(zhuǎn)型過程是痛苦得,但是現(xiàn)在回首看一看還是值得的,畢竟.net平臺(tái)是以后未來的主流,同時(shí)由于WinForm下寫的,所以我學(xué)習(xí)了它的事件消息響應(yīng)機(jī)制,“委托”,這個(gè)以前在軟工課本上才能見到的概念我終于有了深刻的理解。

***個(gè)收獲就是我終于明白了什么叫“引用類型”和“數(shù)值類型”,以前一直不明白java到底比C++好在哪里,這次在眾多“值類型”以及“引用類型”就是value和ref中在轉(zhuǎn)換和來回引用,終于明白了到底怎么回事,看來C#和Java成為主流,也不是“浪的虛名呀”。

收獲二:通過這次痛苦轉(zhuǎn)型,感覺自己還是幸運(yùn)的,雖然機(jī)緣巧合,終于知道了C++ CLR的存在,終于知道怎么操縱強(qiáng)大的.net類庫,想來對(duì)以后的找工作應(yīng)該會(huì)有好處吧

收獲三:在這么費(fèi)勁的學(xué)習(xí)C++ CLR的過程中,這次我這小小程序員體會(huì)了什么叫”學(xué)習(xí)“,什么叫艱辛,以前我覺得考研難考,可是才發(fā)現(xiàn)其實(shí)"研究"才是真的辛苦呢,畢竟考研只要按照方向來就可以了,可以說不用腦子只要努力就可以了,但研究的時(shí)候就不一樣了,當(dāng)你多方思考,才發(fā)現(xiàn)解決的問題如此簡(jiǎn)單,如此的讓你哭笑不得,尋找的過程卻是頗費(fèi)周折呀。

這里我留下我認(rèn)為比較好的兩本書和一個(gè)視頻推薦給和我一樣需要轉(zhuǎn)型的程序員。
1:《mfc應(yīng)用程序在.net框架下的擴(kuò)展》這本書講的是怎么在mfc下應(yīng)用.net類庫,這本書我覺得很好,把.net類庫的幾個(gè)特點(diǎn)全部突出了,不過唯一不足的是它的語法仍然是vs2003的,看的時(shí)候要注意。
2 :visual C++ 2005入門經(jīng)典,這本書是在網(wǎng)上一個(gè)高手推薦給我得,我都沒有買到,只有電子版得,但是這本書把vs2005中C++
CLR的語法講得很透徹,同時(shí)對(duì)比了ISO C++的語法,是一本在原理上很好的書.
3:visual c++.net這本書也很好,winform編程介紹的很多,尤其是我從中學(xué)到了很多GDI+的知識(shí),呵呵,不過可惜它的語法我自己借的這個(gè)版本的也是vs2003語法,需要注意。
4:***一個(gè)是網(wǎng)上得微軟的視頻,就是李建忠講的vs2005這個(gè)可以更好的把握vs2005 C++ CLR.

以上就是我的一點(diǎn)學(xué)習(xí)經(jīng)驗(yàn),希望大家看到的能少做彎路,同時(shí)也希望和我一樣處于轉(zhuǎn)型的程序員大家能多交流,這樣就能更好的進(jìn)步呵呵。

***想說的是雖然連我自己都覺得C++ CLR很“雞肋”,但還是想說tracking handle這名字我很喜歡真的很“cool”,就為這,我也要好好學(xué)習(xí),就像war3中的orc那樣,曾經(jīng)那么的受壓迫,連一代獸王Grubby亦很無奈,但是既然選擇了一個(gè)種族,就要堅(jiān)持下去,就像現(xiàn)在的orc一樣,總有我們強(qiáng)大的那天。哈哈,我翹首以盼。

【編輯推薦】

  1. 深入了解.NET編譯器中CLR加載過程
  2. 詳解CLR中Jit編譯發(fā)生的過程
  3. 分析CLR Via的方法參數(shù)相關(guān)
  4. 淺析CLR類庫調(diào)用方法
  5. 分析與對(duì)比CLR Via C#靜態(tài)構(gòu)造函數(shù)的性能
責(zé)任編輯:田樹 來源: Cworld的專欄
相關(guān)推薦

2009-09-17 18:40:12

CLR是什么

2011-04-11 09:43:25

C++C

2010-02-05 16:07:52

C++多態(tài)覆蓋

2022-07-01 11:56:54

C語言C++編程語言

2010-01-28 15:22:12

C++嵌套類

2011-06-21 15:00:07

JAVAC++

2020-06-17 12:22:44

C覆蓋重載

2011-04-06 08:57:07

C++java多態(tài)

2010-02-02 13:20:33

C++對(duì)象傳遞

2018-05-15 11:14:07

面試官C++編程

2011-05-18 18:05:47

C#C++

2011-05-18 17:56:38

C#C++

2021-02-26 10:41:59

C++程序員代碼

2010-01-28 14:38:36

C++和C#、Java

2011-07-13 18:00:51

CC++VC

2024-06-28 10:04:09

2011-07-14 17:45:06

CC++

2010-02-06 14:40:50

C++初始化和賦值

2009-08-19 10:09:21

C#和C++

2011-08-04 13:38:01

Objective-C C++
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)