DLL入門到深入(3)

2021-05-08 07:44:33 字數 801 閱讀 8075

這篇繼前面接著講dll匯出類。

在講之前,還是看下msdn http://msdn.microsoft.com/zh-cn/library/d91k01sh(vs.80).aspx中關於.def檔案的說明,其中有這樣一句話:如果不使用__declspec(dllexport)關鍵字匯出 dll 的函式,則 dll 需要 .def 檔案。

回想一下前面《dll入門到深入(1)》 中我包含了乙個.def檔案,事實上並不需要這個檔案,可是編譯不通過,我也不知道為什麼。這個問題等等再說,先看**:

1 .cpp如下:

#ifndef dll_03_h_

#define dll_03_h_

#ifdef dll_dog

#define decldir  _declspec(dllexport)

#else

#define decldir _declspec(dllimport)

#endif

extern "c";}

#endif

2 .h如下:

#include

#ifndef dll_dog

#define dll_dog

#include "dll_03.h"

dog::dog(char *na)

void dog::speak()

我們會發現.def檔案完全是個擺設,在(1)中也可以置空,不過.def檔案還是有作用的,好像是設定函式在記憶體中的表現形式,不過本人是菜鳥,那些細節問題這裡不追究。我只要能將dll用到我的程式中就行了,我不是技術狂人,嘿嘿~。

Redis從入門到深入 鎖 17

1.鎖 1.1 基於特定條件的事務執行 業務場景 天貓雙11熱賣過程中,對已經售罄的貨物追加 4個業務員都有許可權進行 的操作可能是一系列的操作,牽扯到多個連續操作,如何保障不會重複操作?業務分析 解決方案 watch key1 key2.unwatch1.2 基於特定條件的事務執行2 業務場景 天...

TestNg 從入門到深入理解

執行順序 從上往下 引數 include 要執行的方法 exclude 除了這裡的方法其他的都要執行 test prioority 整數值 值越小,優先順序越高,預設是0 用例的併發執行 test級的併發 class級的併發 test threadpoolsize 5,invocationcount...

Redis從入門到深入 刪除策略 18

1.刪除策略 1.1 過期資料 redis中的資料特徵 過期的資料真的刪除了嗎?1.2 資料刪除策略 1.定時刪除 2.惰性刪除 3.定期刪除 1.3 時效性資料的儲存結構 1.4 資料刪除策略的目標 在記憶體占用與cpu占用之間尋找一種平衡,顧此失彼都會造成整體redis效能的下降,甚至引發伺服器...