日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

C++随笔

發布時間:2025/7/14 c/c++ 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C++随笔 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

  筆者于今年(研一上學期)利用零零散散的時間系統的學習了C++語言。其實以前也曾不夠系統的學過C++,但想著工作以后開發語言應該就是用C++了,于是就把C++的系統學習放在了日程表中。于是《C++ primer plus》就成了晚上的催眠讀物。最近放寒假了,趁著假期時間寫一寫對這本書和這門語言的感受吧.

  首先說一下這本書,這本書的優點應該在于它非常細致地介紹了C++每種功能的來源,你會明白語言的設計者為什么要這樣設計。而缺點就在于這本書是個大部頭,整本書的內容實在太多、太雜,從頭到尾看極容易讓人生厭,當做工具書又很難找到想要找的內容。因此,本書適合的讀者不是那些想要快速入門的人,而應該是像我這樣希望系統學習C++并且不缺時間的人(因為本人離找工作還有一年半的時間,時間上比較充裕)。

  然后再談談C++這門語言吧,之所以選擇C++作為工程語言是因為在移動機器人和SLAM領域開發的語言基本上都是用C++來寫的。系統學習大概也有半年了,沒想到談論到C++的時候仍然感覺這家伙如淵如海,目前接觸到的C++也僅僅只是其面向對象和模板的那部分。就在今天,偶然機會下看到LeetCode,突然就發現了C++的新大陸,原來關于STL(標準模板庫)的部分我好多都還不清楚,這部分又是C++除面向對象外的又一精華。容器、迭代器及算法類這種在我看來是一種程序設計中的優化算法,使用得當能夠極大的降低算法的時間、空間復雜度,同時,容器、迭代器在某種程度上也是為提升了代碼的可重用性,使程序員從繁雜的底層算法實現中脫離出來。

  本文的主要目的是寫清楚C++特性的由來,而不在具體的代碼上糾結。

  首先談一談類的設計,類是數據與操作的集合。原本在C語言中就有基本數據類型,它們可以進行各種諸如加減乘除操作。通過類這種概念的引入,就擴展了基本數據類型,再對類定義相關操作,就可以像操作基本數據類型一樣來操作類了。為了完成數據的封裝,設計者將類的數據、函數類型分為私有類型和公有類型,控制了數據和函數的訪問權限。而后又通過重載運算符讓程序員可以很自然的使用類,比如將兩個string類相加不用書寫string3 = string1.add(string2) 而直接寫 string3 = string1 + string2。類可以被繼承,也可以被擁有。

  而后便是模板,通過引入模板,類代碼的可重用性就進一步的得到了提升。比如一個鏈表類,其基本的數據類型可以是int,也可以是string,只要這種數據類型提供了比較功能即可,這種模板的重用在容器類中得到了最大的體現。

  以上的內容是我在實驗室中編程經常會用到的內容,而關于容器類和算法我暫時了解的不多,如有錯誤,歡迎指正一二。容器為了完成復雜數據結構的抽象,容器類就是一種包含了簡單數據結構的復雜數據結構,這里的復雜數據結構是指列表、有向圖、紅黑樹等等,而簡單數據結構可以是基本數據類型,也可以是自定義數據類型。比如 vector<student>完成的就是以student為基本數據類型的列表類型。通過容器類,我們可以很容易地實現諸如鏈表、棧、隊列等的數據結構及算法。而算法是在容器上的抽象,通過在容器類中引入迭代器的概念,算法可以進針對某些容器的迭代器來操作。對于特定的一些容器類,可以使用同樣的算法來進行操作,這部分在C++中被稱為泛型編程。

  

參考資料:

[1]關于C++的扯淡

轉載于:https://www.cnblogs.com/hustyan/p/10327965.html

總結

以上是生活随笔為你收集整理的C++随笔的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。