智者的眼光——《C++語言的設計和演化》讀書筆記(2)

來源:互聯網
上載者:User

智者的眼光  

                                                        ——《C++語言的設計和演化》讀書筆記(2)


   我不得不佩服Stroustrup充滿睿智的頭腦:在80年代初,就設計出了那麼多現代C++中所具備的特徵: 

            ● 類——目前幾乎所有流行物件導向語言都有的元素,甚至關鍵字都差不多。            

            ● 衍生類別(繼承的體現,哪一個物件導向語言不具備繼承的性質呢?) 

            ● 公用/私用的存取控制(目前流行物件導向語言都具備的特徵) 

            ● 建構函式和解構函式(也是目前流行物件導向語言都具備的特徵) 

            ● 友員、內聯、運算子多載(C++中不是經常遇到嗎?別的語言不知道)

        這些特徵,在現在看起來是那麼的平常,在任何一本介紹C++物件導向的書中都能查到,但在當時,我想是沒有什麼現成的可以參考的,有的可能就是早期的那些語言,也許有隻言片語可以借鑒,但更多的是透過Stroustrup那富有靈氣的頭腦通過反覆地實踐探索出來的。他的設計是如此富有遠見以至於到現在,我們所使用的語言中,處處都透著當年設計的氣息。

        Stroustrup的眼光還在於準確的把握了市場的需求,使得帶類的C以及後來的C++能夠比較快的被人們接受,廣泛流傳。首先,他知道拉攏甚至極力討好C使用者,因為當時有很多人用C,而且由於C的許多特性如C的靈活性、高效性、可用性以及可移植性使得Stroustrup決定在C的基礎上加以擴充。這樣,不僅C使用者會比較容易接受,其他使用者看到即有C的優點,又結合如Simula、Smalltalk等其他語言的優勢後,也會轉向使用帶類的C的隊伍中來。其次,他沒有忘記在開拓語言優勢的同時,保留原來一些語言的優點,只有這樣,才有可能說服原來用慣了高效靈活的C的使用者轉而投奔到帶類的C以及C++的懷抱中來。他沒有把C++設計成一個完美的語言,而是盡量是語言貼近實際的應用,以完成實際項目為目的。

ps:第一章看起來還比較舒服,可第二章看起來怎麼那麼不順呢?似乎裘老師翻譯的某些關鍵字的適用性還有待商榷,比如inline(翻譯成'線上')、constructor(翻譯成'建構函數')等。

  

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.