讀書筆記 effective c++ Item 1 將c++視為一個言語聯邦。本站提示廣大學習愛好者:(讀書筆記 effective c++ Item 1 將c++視為一個言語聯邦)文章只能為提供參考,不一定能成為您想要的結果。以下是讀書筆記 effective c++ Item 1 將c++視為一個言語聯邦正文
如今的c++曾經是一個多重泛型變成言語。支持進程化,面向對象,函數式,泛型和元編程的組合。這種弱小使得c++無可匹敵,卻也帶來了一些問題。一切“適宜的”規則看上去都有例外。我們怎樣了解這樣一門言語?
最容易的辦法是不要將其看成單一的一門言語而是將其看成是一個有相關性的言語的聯邦。在一個特定的子言語中,一些規則就比擬復雜,明白並且容易記憶。當你從一個子言語切換到另外一個子言語時,這些規則能夠會改動。為了更好的了解c++,你必需辨認次要的子言語,僥幸的是,只要四種子言語:
將這四種子言語記在心裡,在不同的子言語之間停止切換時,高效編程能夠需求變換戰略,譬如,c言語中關於內建類型,按值傳遞比按援用傳遞要高效。在c++中,關於類對象來說,由於用戶自定義的結構函數和析構函數的存在,按援用傳遞比按值傳遞要高效,模板c++中也是如此。但是在STL中,迭代器和函數對象是模擬的C言語中的指針,因而按值傳遞會比擬高效。
因而c++不是一致規范的言語。它是一個言語聯邦,每個子言語都有自己的商定。
轉載請注明出處