我正在Visual Studio 2010中使用C++。我試圖構建客戶端和服務器架構,其中客戶端和服務器都依賴於相同的'引擎'Visual Studio 2010 C++ - 如何打包.lib文件以供重用
下面是一個圖,它說明這一點:
image http://img266.imageshack.us/img266/5573/dependencies.png
其中:
引擎 - 應用特定的引擎
BaseEngine - (其他應用程序使用)的非專用引擎
SomeLibrary - 即BaseEngine取決於
使用Visual Studio庫,我已經建立了相應的項目引用和'包含目錄'。
的客戶能夠看到引擎方法和發動機能夠看到的BaseEngine方法。但問題是,當客戶端和/或服務器調用Engine上的方法時,我得到幾個鏈接錯誤(LNK1120,LNK2001)。
看來這是發生的,因爲引擎依賴於BaseEngine並且客戶端不具有對BaseEngine的依賴性。
所以我的問題是:
反正是有使發動機和BaseEngine項目可以包裹起來,使客戶端和服務器並不需要引用BaseEngine?
感謝您的回答。是的,我現在已經意識到了這個問題,但是我有興趣知道如何編寫這個包裝功能 – oom
沒有一般的建議如何做到這一點。至少有那麼一點信息;-)。這取決於圖書館的架構。在最簡單的情況下,您只需爲每個希望轉發的函數(類?)編寫沉悶的包裝。問題是BaseEngine的功能如何以智能的方式集成在Engine中。我想這將成爲另一個普遍問題的話題。 – pag3faul7