狠狠爱成人网_日韩一级在线_国产综合自拍_亚洲精品韩国_亚洲视频导航_麻豆成人在线播放_欧美jjzz_一区在线视频观看_美脚丝袜一区二区三区在线观看_欧美91视频

當(dāng)前位置:系統(tǒng)之家 > 技術(shù)開發(fā)教程 > 詳細(xì)頁(yè)面

C++學(xué)習(xí)感想

C++學(xué)習(xí)感想

更新時(shí)間:2019-06-28 文章作者:未知 信息來(lái)源:網(wǎng)絡(luò) 閱讀次數(shù):

  在一些論壇上經(jīng)常會(huì)看到一些各語(yǔ)言的優(yōu)劣比較,知道自己所學(xué)語(yǔ)言的優(yōu)劣也好,但是如果一味停留在這個(gè)層面就沒有用了。任何語(yǔ)言都只是工具而已。重要的是使用工具的人!就我個(gè)人的經(jīng)驗(yàn)來(lái)講,真正處于業(yè)界搞開發(fā)的人都愿意使用成熟的、為自己所熟知的技術(shù)來(lái)完成工作。而新手都喜歡用一些比較新的技術(shù)來(lái)做開發(fā),而且喜歡追求新奇(從界面很容易看出來(lái),花花綠綠的界面多半出自新手)。其實(shí),安于用一些效率可能低下、擴(kuò)展性和維護(hù)性差的方法來(lái)解決問(wèn)題并不是開發(fā)人員的錯(cuò)。他們只是在完成工作而已。但是作為一個(gè)真正有上進(jìn)心的開發(fā)人員,我們應(yīng)該使用更優(yōu)雅和高效的編程技術(shù),這才是我們逐漸變成編程“大牛”的好習(xí)慣。老是停留在原地,很容易被淘汰的。在軟件開發(fā)這個(gè)行當(dāng),尤其如此。無(wú)論是對(duì)學(xué)生,還是一線開發(fā)人員,我覺得都不應(yīng)該產(chǎn)生“書讀夠了”的感嘆!我有時(shí)候喜歡將以前看過(guò)的書翻出來(lái)再看,每次總能體會(huì)到一些新東西。有關(guān)C++語(yǔ)言的書籍更是如此,而且我覺得我所起的題目不是很好。為什么?因?yàn)槲矣X得學(xué)習(xí)語(yǔ)言還只是新手跨入軟件開發(fā)“地獄”的第一步,單單學(xué)習(xí)語(yǔ)言本身是遠(yuǎn)遠(yuǎn)不夠的,還要學(xué)習(xí)相關(guān)的程序庫(kù)(C++當(dāng)然首選是先學(xué)習(xí)C++標(biāo)準(zhǔn)程序庫(kù))、相關(guān)的平臺(tái)技術(shù)(如.NET),說(shuō)得更遠(yuǎn)一點(diǎn),還要鍛煉對(duì)目標(biāo)問(wèn)題的分析、歸納能力等等。工作之前,技術(shù)路線自己作主,工作之后,絕大多數(shù)程序員將被公司技術(shù)路線左右。所以,趁現(xiàn)在還有時(shí)間,可以學(xué)一些自己感興趣的。如果想搞軟件開發(fā),特別是電力系統(tǒng)軟件的開發(fā),學(xué)好C++不會(huì)令我們失望。當(dāng)我們進(jìn)入C++的前門,然后經(jīng)過(guò)一段黑暗之路,再?gòu)暮箝T出來(lái)到達(dá)光明頂后,我們會(huì)體味到“一覽眾山小”的感覺。 

  推薦書籍:  

  《編程高手箴言》---------- 梁肇新(用過(guò)超級(jí)解霸的都應(yīng)該知道吧,^_^)寫的第一本書,其中有幾章還是值得一讀的。在這本書中,梁告訴我們,學(xué)東西要耐心,要耐得住“寂寞”,走自己的路,讓別人去“說(shuō)”吧!

  最近比較忙,原來(lái)打算緊扣主題講講一些具體的C++語(yǔ)言的細(xì)節(jié)的,但還是抽不出大段的時(shí)間了。所以,現(xiàn)在只能再漫談一些關(guān)于C++的故事了。

  C++源于C語(yǔ)言,還記得很久以前學(xué)習(xí)C語(yǔ)言的時(shí)光(那是一段快樂(lè)而充實(shí)的時(shí)光),可是現(xiàn)在學(xué)習(xí)C++,并不是在C的基礎(chǔ)上加上了類而已,如果這樣認(rèn)為,我們是耍不好C++的。因此,C++絕不是C的升級(jí)或擴(kuò)充,我們應(yīng)該把C++當(dāng)作一門新語(yǔ)言來(lái)學(xué)習(xí)(C++之父Bjarne Stroustrup語(yǔ))。

  寫程序首先希望是程序能正確執(zhí)行,其次是效率能夠被接受,再次就是易于維護(hù)。C++是一個(gè)難學(xué)易用的語(yǔ)言。C++提供了太多可選擇的東西,而且使用使用C++來(lái)寫程序可以有四種思考模式:基于過(guò)程、基于對(duì)象、面向?qū)ο蠛头盒汀N覀兪褂靡环N語(yǔ)言來(lái)寫程序,并不意味著就是使用語(yǔ)言本身,換句話說(shuō),我們更多的時(shí)候是使用程序庫(kù)在寫程序。比如MFC、STL、ATL、VCL等等。其中要使用C++來(lái)寫出結(jié)構(gòu)優(yōu)美、性能卓越、代碼簡(jiǎn)潔、易于維護(hù)的代碼,首推C++標(biāo)準(zhǔn)程序庫(kù)。STL對(duì)效率做了嚴(yán)格的要求,而且使用STL寫出來(lái)的程序簡(jiǎn)潔美觀(前段時(shí)間我特意貼了一個(gè)要求對(duì)若干整數(shù)進(jìn)行排序的帖子,其實(shí)目的就是用來(lái)展示STL的簡(jiǎn)潔優(yōu)雅)。一旦習(xí)慣使用泛型思維來(lái)考慮問(wèn)題,我們能夠充分體會(huì)到模板帶來(lái)的美!對(duì)于數(shù)值計(jì)算來(lái)說(shuō),C++標(biāo)準(zhǔn)程序庫(kù)可以充分滿足現(xiàn)代化服務(wù)和商業(yè)計(jì)算對(duì)數(shù)據(jù)、信息的即時(shí)回應(yīng)的要求。

  我覺得學(xué)好一門語(yǔ)言最重要的就是實(shí)踐。也就是多“寫”!“工程經(jīng)驗(yàn)之積累”對(duì)已具有一段開發(fā)時(shí)間的程序員而言,非常重要!只有在不斷的積累中,我們才能漸漸體會(huì)到C++語(yǔ)言中的一些背后的東西。對(duì)于這點(diǎn),沒有大量程序代碼寫作經(jīng)驗(yàn)的菜鳥,也可以借助《Effective C++》先攢一些經(jīng)驗(yàn)值。《Effective C++》是一本好書!。Meyers的書絕對(duì)值得一讀,Meyers可以說(shuō)當(dāng)今C++社群中數(shù)一數(shù)二的技術(shù)專家。  

  推薦網(wǎng)站:www.royaloo.com

  C++提供了操作符new來(lái)在堆上分配內(nèi)存,操作符delete來(lái)釋放內(nèi)存。有些情況下,我們需要對(duì)內(nèi)存的分配和釋放進(jìn)行更好的控制。許多程序創(chuàng)建和釋放一些重要類的大量的對(duì)象,如tree nodes,linked lists links,points,lines,messages,etc.使用通用的內(nèi)存分配器如new和delete來(lái)進(jìn)行這些對(duì)象的分配和釋放有時(shí)將支配程序的運(yùn)行時(shí)間和內(nèi)存需求。  

  兩方面的因素:通用內(nèi)存分配操作的運(yùn)行和空間的耗費(fèi)以及不同對(duì)象大小引起的內(nèi)存碎片。類使用定制的內(nèi)存分配器將加快模擬器、編譯器和類似程序的執(zhí)行速度。

  例外一種需要更好的內(nèi)存控制的情況是:需要在有限資源的情況下長(zhǎng)時(shí)間不間斷運(yùn)行的程序。實(shí)時(shí)系統(tǒng)經(jīng)常需要用最少的耗費(fèi)來(lái)獲取有保證的可預(yù)期的內(nèi)存。這也就導(dǎo)致了更好的內(nèi)存控制的需要。一般來(lái)說(shuō),這些程序都避免使用動(dòng)態(tài)的內(nèi)存分配,而使用特殊目的的內(nèi)存分配器來(lái)管理有限資源。

  此外,還有一些情況下由于硬件或系統(tǒng)的要求,需要將對(duì)象放在指定的內(nèi)存位置。這也需要進(jìn)行定制的內(nèi)存管理(通過(guò)重載new來(lái)加以實(shí)現(xiàn))。
  在C++ Release 2.0中,為了滿足以上需求,內(nèi)存管理機(jī)制做了相應(yīng)的修改。主要是引進(jìn)了operator new [] 和 operator delete []。  

  new操作符的作用范圍(Scope for operator new Functions)

  操作符(Operator) 范圍(Scope)

  ::operator new Global

  class-name::operator new Class   

  operator new的第一個(gè)參數(shù)必須是類型size_t(在STDDEF.H中定義的類型),返回類型

  為void *。

  當(dāng)分配內(nèi)建(built-in)類型的對(duì)象、未包含用戶自定義的new操作符函數(shù)的類對(duì)象、任何類型的數(shù)組時(shí),使用全局new操作符函數(shù)。當(dāng)在類中自定義new操作符時(shí),分配該類對(duì)象的內(nèi)存時(shí),調(diào)用該類的new操作符。如下: 

  #include
  #include
  class Blanks
  {
  public:
  Blanks(){}
  void *operator new( size_t stAllocateBlock, char chInit );
  };
  void *Blanks::operator new( size_t stAllocateBlock, char chInit )
  {
  void *pvTemp = malloc( stAllocateBlock );
  if( pvTemp != 0 )
  memset( pvTemp, chInit, stAllocateBlock );
  return pvTemp;
  }
  int main()
  {
  Blanks *a5 = new( 0xa5 ) Blanks;//創(chuàng)建對(duì)象Blanks,并且初試化為0xa5
  return a5 != 0;
  }
  new操作符可以重載,而delete卻不行。因?yàn)榈鹊叫枰尫诺臅r(shí)候,我們所能得到的就是一個(gè)指針。而且該指針可能不是原先的對(duì)象類型指針(有可能進(jìn)行了類型轉(zhuǎn)換)。實(shí)際上,當(dāng)使用new獲得一個(gè)指向一片內(nèi)存的指針時(shí),在該片內(nèi)存前有一個(gè)指示器(indicator),記錄實(shí)際分配的內(nèi)存數(shù)量。當(dāng)調(diào)用delete時(shí),可以獲知需要釋放的內(nèi)存大小。數(shù)組的釋放(Deallocating Arrays): 

  void f( )
  {
  X* p1 = new X[10];
  //...
  delete [] X;
  }

  為什么不使用delete [10] X;來(lái)釋放內(nèi)存?Bjarne Stroustrup稱這種做法容易導(dǎo)致錯(cuò)

  誤,而將記錄元素個(gè)數(shù)的任務(wù)放在delete的實(shí)現(xiàn)中了。

  至于為什么C++中未內(nèi)建垃圾收集器(Garbage Collection)的原因,看《C++語(yǔ)言的設(shè)計(jì)和演化》(En) Bjarne Stroustrup 機(jī)械工業(yè)出版社(俗稱:D&E)可以得到答案。

  此外,C++標(biāo)準(zhǔn)庫(kù)中提供了一種智能型指針auto_ptr,這種指針可以幫助我們防止“被異常拋出時(shí)發(fā)生資源泄漏”。但是缺點(diǎn)是該智能型指針不能指向數(shù)組,因?yàn)槠鋬?nèi)部釋放內(nèi)存是通過(guò)delete而非delete [] 來(lái)進(jìn)行的。所以,只能使用其來(lái)指向一個(gè)單個(gè)對(duì)象。

  模板部分是C++中比較難的部分,也是C++的魅力所在。以下文字是我以前看過(guò)的,具體出處不清楚了。今天稍微整理了一下,作為模板介紹的一個(gè)單元。

溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!

本類教程下載

系統(tǒng)下載排行

狠狠爱成人网_日韩一级在线_国产综合自拍_亚洲精品韩国_亚洲视频导航_麻豆成人在线播放_欧美jjzz_一区在线视频观看_美脚丝袜一区二区三区在线观看_欧美91视频
青青草成人在线观看| 亚洲欧美亚洲| 91精品国产入口| 国产精品一区2区| 欧美va亚洲va| 欧美日韩国产在线一区| 一区二区三区中文免费| 色欧美乱欧美15图片| 极品少妇一区二区三区精品视频| 欧美肥大bbwbbw高潮| av成人免费在线| 亚洲色图色小说| 色噜噜狠狠一区二区三区果冻| 国模娜娜一区二区三区| 国产日韩欧美精品一区| 一区二区精品在线| 麻豆精品国产91久久久久久| 精品国产一区二区三区忘忧草| 国产一区视频观看| 爽好多水快深点欧美视频| 日韩欧美一卡二卡| 黄色日韩在线| 另类综合日韩欧美亚洲| 久久这里只有精品首页| 国产精品久久久一区二区| 狠狠色丁香婷婷综合| www亚洲一区| 国产精品日本| 国产成人精品一区二| 亚洲少妇中出一区| 欧美高清一级片在线| 国产精品a久久久久| 日韩高清中文字幕一区| 久久婷婷成人综合色| 国产日韩三级在线| 亚洲免费在线| 99re这里只有精品首页| 五月天国产精品| 久久久久综合网| 一本在线高清不卡dvd| 91网站在线播放| 免费在线看成人av| 国产精品乱人伦一区二区| 在线国产电影不卡| 亚洲午夜精品福利| 国产美女久久久久| 亚洲一区二区三区四区在线 | 久久久91精品国产一区二区三区| 亚洲女优在线| 欧美日韩一卡| 国产老妇另类xxxxx| 亚洲综合色婷婷| 久久综合久色欧美综合狠狠| 91国产精品成人| 在线视频观看日韩| 不卡电影免费在线播放一区| 日本成人在线网站| 亚洲女同一区二区| 久久一区二区视频| 欧美色图天堂网| 国产视频在线观看一区| 欧美在线视频一区二区三区| 久久狠狠亚洲综合| 一区二区视频免费在线观看| 久久久国产综合精品女国产盗摄| 欧美优质美女网站| 亚洲影视在线| 一区在线电影| 91麻豆精东视频| 国产九色精品成人porny| 亚洲电影你懂得| 亚洲欧洲日韩综合一区二区| 精品国产免费一区二区三区香蕉| 欧美性xxxxxxxx| 久久久久久婷| 一区二区国产日产| 精品动漫一区| 国产一区再线| 91香蕉国产在线观看软件| 国产精品中文字幕日韩精品| 日韩二区在线观看| 亚洲香肠在线观看| 亚洲摸摸操操av| 中文字幕欧美一区| 日本一区二区综合亚洲| 欧美精品一区二区蜜臀亚洲| 91精品国产手机| 欧美群妇大交群中文字幕| 久久综合福利| 色婷婷久久久久swag精品| 午夜综合激情| 国产精品外国| 性一交一乱一区二区洋洋av| 99这里有精品| 亚洲久久一区| 国产精品久久国产三级国电话系列| 亚洲午夜av| 精品91视频| 一区二区三区欧美成人| 亚洲人体一区| 国产精品一区二区你懂得| a91a精品视频在线观看| 国产亚洲精品v| 亚洲一区在线直播| 亚洲激情六月丁香| 国产精品国产三级国产普通话三级| 欧美激情资源网| 国产精品人人做人人爽人人添 | 日韩中文字幕不卡| 人妖欧美一区二区| 麻豆一区二区99久久久久| 免费日本视频一区| 国模冰冰炮一区二区| 岛国av在线一区| 91丨九色丨蝌蚪丨老版| 欧美日韩调教| 亚洲久久在线| 色婷婷综合久色| 欧美日本在线看| 精品久久人人做人人爱| 久久久久久免费| 国产精品电影院| 午夜视频一区二区| 精品一区二区免费| 国产91丝袜在线播放| 91麻豆精东视频| 在线成人www免费观看视频| 国产精品久久久久9999高清| 91久久国产最好的精华液| 欧美精品丝袜中出| 久久久99精品久久| 亚洲一区视频在线| 久久69国产一区二区蜜臀| 不卡在线观看av| 亚洲特级毛片| 91福利社在线观看| 欧美mv日韩mv国产网站app| 日本一区二区免费在线观看视频 | 久久蜜桃av一区精品变态类天堂| 国产三级一区二区三区| 亚洲综合一区二区精品导航| 美国欧美日韩国产在线播放| 99精品国产91久久久久久 | 91精品视频网| 国产精品女同互慰在线看| 午夜欧美视频在线观看| 国产精品白丝jk黑袜喷水| 狠狠色噜噜狠狠狠狠色吗综合| 免播放器亚洲| 欧美电影免费观看完整版| 亚洲激情在线播放| 国产一区二区美女诱惑| 亚洲婷婷免费| 欧美日韩高清影院| 国产精品毛片a∨一区二区三区| 天天免费综合色| 91视频免费看| 一本久道中文字幕精品亚洲嫩| 欧美大片顶级少妇| 亚洲国产精品久久人人爱蜜臀| 福利一区在线观看| av成人毛片| 欧美变态tickle挠乳网站| 亚洲欧洲制服丝袜| 粉嫩欧美一区二区三区高清影视 | 亚洲精品一区二区精华| 亚洲一级在线观看| 99在线精品视频| 色婷婷精品久久二区二区蜜臀av | 亚洲自拍都市欧美小说| 成人激情视频网站| 欧美亚洲一区| 国产三级三级三级精品8ⅰ区| 日本在线观看不卡视频| 欧美成人高清| 欧美高清hd18日本| 一区二区三区蜜桃| 成人动漫精品一区二区| 色婷婷av一区二区| 国产精品久久久久影视| 国产精品456| 老司机一区二区三区| 日本一区二区三区免费乱视频| 激情伊人五月天久久综合| 99精品99久久久久久宅男| 精品国产乱码久久久久久图片 | 国产精品123| 色天使色偷偷av一区二区| 中文字幕亚洲不卡| 成人免费毛片片v| 欧美日韩中文另类| 偷拍亚洲欧洲综合| 亚洲第一在线| 国产拍欧美日韩视频二区| 国产综合久久久久久久久久久久| 国产精品入口66mio| 欧美不卡在线| 777亚洲妇女| 视频一区在线视频| 国产婷婷精品|