原创 右值系列之六:向前,向前!

原文來自:http://cpp-next.com/archive/2009/12/onward-forward/ 除了提供轉移語義,右值引用的另一個主要用途是解決“完美轉發”。在這裏,“轉發”的指將一個泛型函數的實參轉發至另一個函數而不會

原创 C/C++聯合(Union)淺談

聯合提供了一種方式,能夠規避C的類型系統,允許以多種類型來引用一個對象。聯合聲明的語法和結構體的語法一樣,只不過語義相差很大。它們不是用不同的域來引用不同的存儲器塊,而是引用同一塊存儲塊。 下面我們來舉幾個例子: struct STest

原创 再論C++之垃圾回收(GC)

本文已經遷移到: http://cpp.winxgui.com/cn:garbage-collection-in-cplusplus 使用智能指針(smart pointers) http://www.codeproject.com/c

原创 [C++]explicit解釋

explicit   C++提供了關鍵字explicit,可以阻止不應該允許的經過轉換構造函數進行的隱式轉換的發生。聲明爲explicit的構造函數不能在隱式轉換中使用。   C++中, 一個參數的構造函數, 承擔了兩個角色。 1

原创 C++繼承詳解

公有繼承(public)、私有繼承(private)、保護繼承(protected)是常用的三種繼承方式。 1. 公有繼承(public) 公有繼承的特點是基類的公有成員和保護成員作爲派生類的成員時,它們都保持原有的狀態,而基類的私有成

原创 右值系列之一:想要快?就傳值

第一篇:想要快?就傳值 原文來自:http://cpp-next.com/archive/2009/08/want-speed-pass-by-value/實話實說,你對以下這段代碼有何感覺? view plain </pr

原创 VMware中ubuntu忘記密碼的解決辦法

在VMware中安裝了ubuntu 11.04,經過了一個長假,再次登錄的時候居然進不去了,一開始不知道怎樣在虛擬機中進入到Grub啓動界面,網上搜索了一番,按照以下步驟重新爲用戶設定了新密碼。 重啓ubuntu,隨即長按shift進入g

原创 右值系列之三:你的下一步轉移

第三篇:你的下一步轉移 這是關於C++中的高效值類型的系列文章中的第三篇。在上一篇中,我們介紹了C++0x的右值引用,描述瞭如何建立一個可轉移類型,並示範瞭如何顯式地利用可轉移性。現在我們來看看轉移優化的其它一些機會,開拓一些關於轉移

原创 C++的類型轉換:static_cast、dynamic_cast、reinterpret_cast和const_cast

在C++中,存在類型轉換,通常意味着存在缺陷(並非絕對)。所以,對於類型轉換,有如下幾個原則: (1)儘量避免類型轉換,包括隱式的類型轉換 (2)如果需要類型轉換,儘量使用顯式的類型轉換,在編譯期間轉換 (3)避免使用reinterpr

原创 解決TCP網絡傳輸“粘包”問題

當前在網絡傳輸應用中,廣泛採用的是TCP/IP通信協議及其標準的socket應用開發編程接口(API)。TCP/IP傳輸層有兩個並列的協議:TCP和UDP。其中TCP(transport control protocol,傳輸控制協議)

原创 右值系列之二:用右值引用來轉移

第二篇:用右值引用來轉移 這是關於C++中的高效值類型的系列文章中的第二篇。在上一篇中,我們討論了複製省略如何被用來消除可能發生的多次複製操作。複製省略是透明的,在看起來非常普通的代碼中自動發生的,幾乎沒有任何缺點。好消息已經夠多了

原创 右值系列之四:再論賦值

第四篇:再論賦值 原文來自:http://cpp-next.com/archive/2009/09/your-next-assignment/ 這是關於C++中的高效值類型的系列文章中的第四篇。在上一篇中,我們討論瞭如何處理右值引用函

原创 C++中構造函數與析構函數的調用順序

1.參考文獻 參考1: C++繼承中構造函數、析構函數調用順序及虛函數的動態綁定 參考2: 構造函數、拷貝構造函數和析構函數的的調用時刻及調用順序 參考3: C++構造函數與析構函數的調用順序 2.構造函數、析構函數與拷貝構造函數介

原创 一句話評論設計模式六大原則

  原則,故名思議則是本質的意思。所謂擒賊先擒王,研究設計模式自然要先了解設計原則,所有的模式都是在這些原則的基礎之上發展起來的,有的是側重一個,有的是多個都有所涉及。看完設計模式之後,我感覺到每個模式都有這些原則的影子,還滲透着面向對

原创 使用Visual Leak Detector檢測內存泄漏

轉自http://hi.baidu.com/freeze9527/blog/item/280742d15474983f9a502726.html 原