[翻譯] Effective C++, 3rd Edition, 附錄 A. 超越 Effective C++

附錄 A. 超越 Effective C++作者:Scott Meyers譯者:fatalerror99 (iTePub's Nirvana)發布:http://blog.csdn.net/fatalerror99/Effective C++ 覆蓋了我認為對當前的 C++ 程式員最重要的通用指導方針,但是如果你有興趣在更多的方面提升你的效力,我推薦你去研讀我的其他 C++ 書籍,More Effective C++ 和 Effective STL。More Effective C++

[翻譯] Effective C++, 3rd Edition, 附錄 B. 第二和第三版之間的 Item 映射

附錄 B. 第二和第三版之間的 Item 映射作者:Scott Meyers譯者:fatalerror99 (iTePub's Nirvana)發布:http://blog.csdn.net/fatalerror99/Effective C++ 的第三版在很多方面與第二版不同,其中最令人信服的是它包含很多新的資訊。然而,第二版的大部分內容依然保留在第三版中,雖然經常會改變形式和位置。在後面幾頁的表格中,我展示了第二版 Items

[翻譯] Effective C++, 3rd Edition, Item 49: 瞭解 new-handler 的行為(上)

Item 49: 瞭解 new-handler 的行為作者:Scott Meyers譯者:fatalerror99 (iTePub's Nirvana)發布:http://blog.csdn.net/fatalerror99/當 operator new 不能滿足一個記憶體配置請求時,它拋出一個 exception(異常)。很久以前,他返回一個 null pointer(null 指標),而一些比較老的編譯器還在這樣做。你依然能得到以前的行為(在一定程度上),但是我要到這個 Item

[翻譯] Effective C++, 3rd Edition, Item 49: 瞭解 new-handler 的行為(下)

(點擊此處,接上篇)但是也許你依然在為 Widget 從 NewHandlerSupport<Widget> 繼承而煩惱。如果是這樣,當你注意到 NewHandlerSupport template 從來沒有用到它的 type parameter T 時,你可能會更加煩惱。它不需要那樣做。我們需要的全部就是為每一個從 NewHandlerSupport 繼承的 class 提供一份不同的 NewHandlerSupport ——特別是它的 static data

[翻譯] Effective C++, 3rd Edition, Item 3: 只要可能就用 const

Item 3: 只要可能就用 const作者:Scott Meyers譯者:fatalerror99 (iTePub's Nirvana)發布:http://blog.csdn.net/fatalerror99/關於 const 的一件美妙的事情是它允許你指定一種 semantic(語義上的)約束:一個特定的 object(對象)不應該被修改。而 compilers(編譯器)將執行這一約束。它允許你通知

[翻譯] Effective C++, 3rd Edition, Item 1: 將 C++ 視為語言的聯合體

Item 1: 將 C++ 視為 federation of languages(語言聯合體)作者:Scott Meyers譯者:fatalerror99 (iTePub's Nirvana)發布:http://blog.csdn.net/fatalerror99/最初,C++ 僅僅是在 C 的基礎上附加了一些 object-oriented(物件導向)的特性。C++ 最初的名稱—— "C with Classes" 就非常直觀地表現了這一點。作為一個語言的成熟過程,C++

共用Windows下C++庫之線程池篇

 上一篇我把建立單個線程的源碼給出來了,當然,線程池的也不能拉下~ 很多時候,我們需要一組線程來解決問題。當然可以建立一些線程來完成工作,然後關閉掉。當又需要時,重複上述過程即可。然而,無論是用戶端還是服務端,完全沒必要如此,只需要實現建立一組線程,按需分配,不必建立--關閉--建立--關閉… 也許我們也能自己寫成符合需求的線程池組件,但是,系統也提供了線程池組件。我認為就應該重複利用(出於學習的目的另當別論)。在這裡,主要針對XP系統,提供一組C++ wrap過的線程池組件和模仿ATL線程池。

[翻譯] Effective C++, 3rd Edition, Item 47: 為類型資訊使用 traits classes(特徵類)(上)

Item 47: 為類型資訊使用 traits classes(特徵類)作者:Scott Meyers譯者:fatalerror99 (iTePub's Nirvana)發布:http://blog.csdn.net/fatalerror99/STL 主要是由 containers(容器),iterators(迭代器)和 algorithms(演算法)的 templates(模板)構成的,但是也有幾個 utility templates(工具模板)。其中一個被稱為

[翻譯] Effective C++, 3rd Edition, Item 42: 理解 typename 的兩個含義

Item 42: 理解 typename 的兩個含義作者:Scott Meyers譯者:fatalerror99 (iTePub's Nirvana)發布:http://blog.csdn.net/fatalerror99/問題:在下面的 template declarations(模板聲明)中 class 和 typename 有什麼不同?template<class T> class Widget;                 // uses "class"template&

[翻譯] Effective C++, 3rd Edition, Item 44: 從 templates(模板)中分離出 parameter-independent(參數無關)的代碼(上)

Item 44: 從 templates(模板)中分離出 parameter-independent(參數無關)的代碼作者:Scott Meyers譯者:fatalerror99 (iTePub's Nirvana)發布:http://blog.csdn.net/fatalerror99/templates(模板)是節省時間和避免代碼重複的極好方法。不必再輸入 20 個相似的 classes,每一個包含 15 個 member functions(成員函數),你可以輸入一個 class

[翻譯] Effective C++, 3rd Edition, Item 2: 用 consts, enums 和 inlines 取代 #defines

Item 2: 用 consts, enums 和 inlines 取代 #defines作者:Scott Meyers譯者:fatalerror99 (iTePub's Nirvana)發布:http://blog.csdn.net/fatalerror99/這個 Item 改名為“用 compiler(編譯器)取代 preprocessor(前置處理器)”也許更好一些,因為 #define 根本就沒有被看作是語言本身的一部分。這是它很多問題中的一個。當你像下面這樣做:#define

thrift C++伺服器/用戶端開發

內容轉自:http://blog.csdn.net/hbuxiaoshe/article/details/6558391原文內容如下:我用的是c++,所以我舉一個c++的例子,簡單說一下thrift的使用入門。例子描述是這樣的:我們將學生資訊(學號,姓名,性別,年齡)由用戶端發送到服務端。實現這個例子,我們大致要做以下幾部分事情:(1)書寫.thrift檔案(2)產生cpp檔案(3)編寫用戶端(4)編譯cpp檔案並執行 (1)書寫.thrift檔案學生資訊是有結構的,所以我們使用thrift的s

Beyond the C++ Standard Library: An Introduction to Boost — Library 1.5 shared_array

shared_array標頭檔: "boost/shared_array.hpp"shared_array 用於共用數組所有權的智能指標。它與shared_ptr的關係就如scoped_array與scoped_ptr的關係。shared_array 與 shared_ptr 的不同之處主要在於它是用於數組的而不是用於單個對象的。在我們討論 scoped_array時,我提到過通常std::vector是一個更好的選擇。但 shared_array 比

[翻譯] Effective C++, 3rd Edition, Item 39: 謹慎使用 private inheritance(私人繼承)(上)

Item 39: 謹慎使用 private inheritance(私人繼承)作者:Scott Meyers譯者:fatalerror99 (iTePub's Nirvana)發布:http://blog.csdn.net/fatalerror99/Item 32 論述了 C++ 將 public inheritance(公有繼承)視為一個 is-a 關係。當給定一個 hierarchy(繼承體系),其中有一個 class Student 從一個 class Person

[翻譯] Effective C++, 3rd Edition, Item 13: 使用 objects(對象)管理資源

Item 13: 使用 objects(對象)管理資源作者:Scott Meyers譯者:fatalerror99 (iTePub's Nirvana)發布:http://blog.csdn.net/fatalerror99/假設我們和一個類比投資(例如,股票,債券等)的庫一起工作,各種各樣的投資形式從一個 root class(根類)Investment 繼承出來:class Investment { ... };            // root class of hierarchy

Beyond the C++ Standard Library: An Introduction to Boost — Library 1.3 scoped_array

scoped_array標頭檔: "boost/scoped_array.hpp"需要動態分配數組時,通常最好用std::vector來實現,但是有兩種情形,看起來用數組更應該: 一種是為了最佳化,用vector多少有一些額外的記憶體和速度開銷;另一種是為了某種原因,必須要求數組的大小是固定的。[5]

C++運算子&和&&|和||的不同點

&&是邏輯運算子,&是位元運算符&和|可以進行邏輯運算也可進行位元運算,&&,|| 兩邊只能是bool類型&,| 兩邊可以是bool類型或者是數實值型別區別:if (A && B)  如果 A 為 false ,整個運算式就為 false,不再計算 B 的值了。if (A & B)   如果 A 為 false ,整個運算式就為 false,但還要計算 B 的值。if (A && B++)  如果A

共用Windows下C++庫之記憶體池篇

目錄結構記憶體池簡介 介紹分析記憶體池改進及所使用技術 如何配合STL容器 效能測試 如何使用  記憶體池簡介:關於記憶體池的介紹,好文很多(這裡,這裡,這裡,還有這裡…)。在如今的PC機器上,記憶體池的作用也沒有那麼明顯了,作業系統對記憶體的管理已經相當不錯。但,為什麼還需要記憶體池呢?兩點:1. 減少記憶體管理負擔,提升效能。(比如,在進行密集型演算法前申請足夠記憶體記憶體,然後使用,最後統一釋放) 2.減少分頁錯誤(分頁錯誤是由虛擬記憶體與實體記憶體交換導致的),減少記憶體片段,提高效能。

共用Windows下C++庫之序列化組件

簡介:什麼是序列化?簡單來說,序列化就是將對象執行個體的狀態轉換為可保持或傳輸的格式的過程。與序列化相對的是還原序列化,它根據流重構對象。這兩個過程結合起來,可以輕鬆地儲存和傳輸資料。對象序列化還原序列化通常用於:1. 將Object Storage Service於硬碟上2.

C++二進位相容性

學習、工作中總結的條款,不喜勿擾~由於標準委員會一直沒有統一標準的C++ ABI,導致各個廠商都有自己的一套體系,為了不出意外,循規蹈矩也有一定的必要,但可以斟酌,三思而後行。能:1. 可以添加非virtual函數2. 可以添加enum到class3. 可以追加enum值到已存在enum中4. 可以去掉private限制符沒有被inline函數調用或者被使用的且非virtual函數5. 可以添加static資料成員6. 添加新的class7. 改變函數的預設參數8.

總頁數: 4314 1 .... 1642 1643 1644 1645 1646 .... 4314 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.