原创 C++ 加載dll 及調用lib 和 dll的 方法 和 動態庫DLL與靜態庫lib的區別

C++加載dll  調用DLL有兩種方法:靜態調用和動態調用.  (一).靜態調用其步驟如下:  1.把你的youApp.DLL拷到你目標工程(需調

原创 C++ inlinie

C++ 背景 在C&C++中 一、inline關鍵字用來定義一個類的內聯函數,引入它的主要原因是用它替代C中表達式形式的宏定義。 表達式形式的宏定義一例: #define ExpressionName(Var1,Var2) ((Var1)

原创 C++ try()catch()拋異常

以前都是用try{} catch(…){}來捕獲C++中一些意想不到的異常, 今天看了Winhack的帖子才知道,這種方法在VC中其實是靠不住的。例如下面的代碼: try { BYTE* pch ;pch = (BYTE* )00001

原创 STL map和set區別

摘要:本文列出幾個基本的STL map和STL set的問題,通過解答這些問題講解了STL關聯容器內部的數據結構,最後提出了關 於UNIX/LINUX自帶平衡二叉樹庫函數和map, set選擇問題,並分析了map, set的優勢之處。對

原创 C++ STL 學習總結

STL就是Standard Template Library,標準模板庫。這可能是一個歷史上最令人興奮的工具的最無聊的術語。從根本上說,STL是一些“容器”的集合,這些“容器”有list, vector,set,map等,STL也是算法

原创 深入研究 C++中的 STL Deque 容器

本文檔深入分析了std::deque,並提供了一個指導思想:當考慮到內存分配和執行性能的時候,使用std::deque要比std::vector好。

原创 STL vector用法

vector是C++標準模板庫中的部分內容,它是一個多功能的,能夠操作多種數據結構和算法的模板類和函數庫。vector之所以被認爲是一個容器,是因爲它能夠像容器一樣存放各種類型的對象,簡單地說,vector是一個能夠存放任意類型的動態數組

原创 C++ STL string應用

之所以拋棄char*的字符串而選用C++標準程序庫中的string類,是因爲他和前者比較起來,不必 擔心內存是否足夠、字符串長度等等,而且作爲一個類

原创 DLL動態鏈接庫和LIB靜態鏈接庫

神馬是靜態鏈接和動態鏈接 大家都懂的,DLL就是動態鏈接庫,LIB是靜態鏈接庫。DLL其實就是EXE,只不過沒main。 動態鏈接是相對於靜態鏈接而

原创 C/C++ 變量定義與聲明的區別

變量定義與聲明的區別 我們在程序設計中,時時刻刻都用到變量的定義和變量的聲明,可有些時候我們對這個概念不是很清楚,知道它是怎麼用,但卻不知是怎麼一會事,下面我就簡單的把他們的區別介紹如下:      變量的聲明有兩種情況:      (1

原创 C++虛函數

C++中的虛函數(virtual function) 原文出處:http://objects.nease.net/ 先看代碼 class A{public:     void funPrint(){cout<<"funPrint of 

原创 C++內存

1.內存問題的原因及分類     在C/C++程序中,有關內存使用的問題是最難發現和解決的。這些問題可能導致程序莫名其妙地停止、崩潰,或者不斷消耗內存直至資源耗盡。由於C/C++語言本身的特質和歷史原因,程序員使用內存需要注意的事項較多

原创 算法時間複雜度和空間複雜度

定義 空間複雜度(Space Complexity)是對一個算法在運行過程中臨時佔用存儲空間大小的量度,記做S(n)=O(f(n))。比如直接插入排序的時間複雜度是O(n^2),空間複雜度是O(1) 。而一般的遞歸算法就要有O(n)的空

原创 最短路徑算法詳細介紹

據 Drew 所知最短路經算法現在重要的應用有計算機網絡路由算法,機器人探路,交通路線導航,人工智能,遊戲設計等等。美國火星探測器核心的尋路算法就是

原创 STL list基礎

http://www.cnblogs.com/fangyukuan/archive/2010/09/21/1832364.html 各個容器有很多的相似性。先學好一個,其它的就好辦了。先從基礎開始。 先看看他們的分類吧 標準STL序列容器