原创 C++ 前置操作符與後置操作符

int a; ++a;//前置操作符 a++;//後置操作符 C語言中,常常使用後置操作符。而C++中建議,只有在必要時才使用後置操作符。 因爲前置操作需要做的工作更少,只需加1後返回加1的結果即可。而後置操作符則必須先保存操作

原创 Destructors That Throw and Why They're Evil

Solution This brings us to a key topic, namely the innocent looking delete[] p;. What does it really do? And how safe

原创 編譯Boost 詳細步驟 適用 VS2013

vs2013編譯boost   【一、Boost庫的介紹】 Boost庫是一個經過千錘百煉、可移植、提供源代碼的C++庫,作爲標準庫的後備,是C++標準化進程的發動機之一。Boost庫由C++標準委員會庫工作組成員發起,其中有些內容有望

原创 請禁用VS(C++)2013的鏈接器的COMDAT選項

編譯器開發一直是計算機科學中的基礎性重點研究領域以至於國內每本計算機導論類的教材都將其歸爲和OS一級的系統軟件,所以經過幾十年的發展編譯原理有一整套完善詳盡的理論。在科學領域追求真理的道路上不存在終點,有的只是一代代開拓者們對精益求精的

原创 教你看懂C++類庫函數定義之三---_stdcall

一切從一個C++ 類庫頭文件開始,現在在做一個C++的項目,期間用到一個開源的界面庫DUILib(類似MFC),這個東西還不錯能很容易的寫出漂亮的界面,比如QQ的界面,可以去下載下來研究研究,地址:http://code.google.

原创 boost-1.55.0和STLport-5.2.1的適配

編譯環境:WIN8.1,VS2013專業版update3 一、編譯boost本博客已有,參考列表,不再贅述。 二、STLport適配 (直接保存步驟二中修改後的源碼即可) 下載stlport.   下載地址:http://sour

原创 教你看懂C++類庫函數定義之一---HRESULT 宏

一切從一個C++ 類庫頭文件開始,現在在做一個C++的項目,期間用到一個開源的界面庫DUILib(類似MFC),這個東西還不錯能很容易的寫出漂亮的界面,比如QQ的界面,可以去下載下來研究研究,地址:http://code.google.

原创 庫的 link 和 runtime-link,搭配shared 和 static

參考: http://bbs.sjtu.edu.cn/bbscon,board,C,file,M.1300328832.A.html http://noteonx.blogspot.com/2009/04/boost.html h

原创 冒泡,插入,折半插入,希爾,快速,簡單選擇排序源碼總結

#include <iostream>   using namespace std;   //各種排序方法:   /**冒泡排序法**/   //它的時間複雜度爲O(n^2),雖然不及堆排序、快速排序的O(nlogn,底數爲2),但是有

原创 algorithms

再好的編程技巧,也無法讓一個笨拙的算法起死回生。 選擇了錯誤的算法,便註定了失敗的命運!

原创 C++內存區塊

原创 STL之Input & Output Iterator

1         輸入迭代器(input iterator)——用於讀取容器中的信息,但不一定能夠修改它。 n         輸入迭代器iter通過解除引用(即*iter),來讀取容器中其所指向元素之值; n         爲了使輸

原创 散列表的開放尋址法

開放尋址法(open addressing)中,所有元素都存放在槽中,在鏈表法散列表中,每個槽中保存的是相應鏈表的指針,爲了維護一個鏈表,鏈表的每個結點必須有一個額外的域來保存它的前戲和後繼結點。開放尋址法不在槽外保存元素,不使用指針,

原创 The Open Source Definition

Introduction Open source doesn't just mean access to the source code. The distribution terms of open-source