DLL顯示運行時鏈接
- LoadLibrary,裝載一個DLL到進程的地址空間。
- GetProcAddress,查找某個符號的地址。
- FreeLibrary,卸載某個已加載的模塊。
在Windows下,要儘量遵循以下指導意見來使用C++編寫動態鏈接庫
- 所有的接口函數都應該是虛函數。所有的方法都應該是純虛的(或inline)。
- 所有的全局函數都應該使用extern “C” 來防止名字修飾的不兼容。並且導出函數都應該是__stdcall 調用規範的。
- 不要使用C++標準庫STL。
- 不要使用異常。
- 不要使用虛析構函數。
- 不要在DLL裏面申請內存,而且在DLL外釋放(或者相反)。
- 不要在接口中使用重載方法。