2012-07-21 46 views
0

考慮我們有一個程序來管理100個矩形(矩形)之間的碰撞檢測。 ,我們有一個類或函數用於兩個矩形之間的碰撞檢測(例如CCollisionCheck或CollidsTo ...)。 並考慮一些反應,我們有一些影響碰撞檢測的條件。例如,我們想排除RED rects,例如 。或只檢查綠色的BLUE rects。 任何任意條件。從應用程序外部訪問類和函數

我想在exe外部編寫必要的代碼,用於管理條件,使用我的exe類(CCollisionCheck)或函數(CollidsTo ...)。

任何人都可以幫我嗎? 如何從應用程序外部訪問我的類和函數?

+0

將應用程序編譯爲可執行文件後,您無法更改其行爲。 – 2012-07-21 10:40:59

+0

只有當程序具有動態加載新代碼的接口(例如:通過'dll'或通過提供對腳本的支持)時,纔可以這樣做。 – 2012-07-21 10:41:29

+0

@OliCharlesworth當然可以。取決於exe或dll提供的界面。 – 2012-07-21 10:44:41

回答

0

既然你說exe,我會假設你在Windows上。

你可以導出和導入類和方法從一個EXE,就像你會用一個DLL。

你需要一個宏DLLIMPEXP編譯EXE和

declspec(dllimport) 

時,當您在一個不同的項目頭,其擴展到

declspec(dllexport) 

。看看這些。使用它們,您可以指定要導出的符號。

將其他項目鏈接到編譯exe時生成的lib,並在聲明函數和類的地方包含標頭。

+0

謝謝。但我仍然需要使用函數指針。我想我需要從應用程序訪問DLL。我可能會聲明一些抽象類並從它派生我的類在DLL中。 – alirakiyan 2012-07-21 11:30:13