Html格式的文檔見譯者主頁:http://www.wushuang.net/
如果你對這個翻譯稿有任何意見和建議,請發信給譯者:onekey@163.com。
原文的地址為:http://www.research.att.com/~bs/bs_faq.html)
(Bjarne Stroustrup博士,1950年出生于丹麥,先后畢業于丹麥阿魯斯大學和英國劍撟大學,AT&T大規模程序設計研究部門負責人,AT&T 貝爾實驗室和ACM成員。1979年,B. S開始開發一種語言,當時稱為"C with Class",后來演化為C++。1998年,ANSI/ISO C++標準建立,同年,B. S推出其經典著作The C++ Programming Language的第三版。)
這是一些人們經常向我問起的有關C++的風格與技巧的問題。如果你能提出更好的問題,或者對這些答案有所建議,請務必發Email給我(bs@research.att.com)。請記住,我不能把全部的時間都花在更新我的主頁上面。
請注意,這僅僅是一個常見問題與解答的列表。它不能代替一本優秀教科書中那些經過精心挑選的范例與解釋。它也不能象一本參考手冊或語言標準那樣,提供詳細和準確的說明。有關C++的設計的問題,請參見《C++語言的設計和演變》(The Design and Evolution of C++)。關于C++語言與標準庫的使用,請參見《C++程序設計語言》(The C++ Programming Language)。
目錄:
我如何寫這個非常簡單的程序?
為什么編譯要花這么長的時間?
為什么一個空類的大小不為0?
我必須在類聲明處賦予數據嗎?
為什么成員函數默認不是virtual的?
為什么析構函數默認不是virtual的?
為什么不能有虛擬構造函數?
為什么重載在繼承類中不工作?
我能夠在構造函數中調用一個虛擬函數嗎?
有沒有“指定位置刪除”(placement delete)?
我能防止別人繼承我自己的類嗎?
為什么不能為模板參數定義約束(constraints)?
既然已經有了優秀的qsort()函數,為什么還需要一個sort()?
什么是函數對象(function object)?
我應該如何對付內存泄漏?
我為什么在捕獲一個異常之后就不能繼續?
為什么C++中沒有相當于realloc()的函數?
如何使用異常?
怎樣從輸入中讀取一個字符串?
為什么C++不提供“finally”的構造?
什么是自動指針(auto_ptr),為什么沒有自動數組(auto_array)?
可以混合使用C風格與C++風格的內存分派與重新分配嗎?
我為什么必須使用一個造型來轉換*void?
我如何定義一個類內部(in-class)的常量?
為什么delete不會將操作數置0?
我能夠寫“void main()”嗎?
為什么我不能重載點符號,::,sizeof,等等?
怎樣將一個整型值轉換為一個字符串?
“int* p”正確還是“int *p”正確?
對于我的代碼,哪一種布局風格(layout style)是最好的?
我應該將“const”放在類型之前還是之后?
使用宏有什么問題?
延伸閱讀
文章來源于領測軟件測試網 http://www.kjueaiud.com/