我有一個使用類從另一個庫庫(DLL)什麼是暴露內部類到公共API的最佳方式?
//DLL External library API: Foo library
namespace foo{
class Component(Elemement e) {
...
}
} //foo namespace
現在我的圖書館需要使用foo的DLL和使用它的一些功能和類,但沒有露出富庫類型,但有些「翻譯」
// my developed library "Core"
namespace core{
class Component(Element e){
...
}
}
的公共API將公開級核心::零組件及核心::元,但實際上這些應該是直接翻譯給foo的::零組件和Foo ::元素。想象一下,這個翻譯需要完成許多其他需要被包裝暴露的類。 什麼是最好的處理方法?
你是什麼意思,當你寫「翻譯」? –
我需要一個class core ::與foo :: Element非常相似的元素,我只是不想暴露foo類而只是一個wapper。在這種情況下,包裝只是爲了隱藏基礎類不在我的庫中開發,但在外部庫(foo) 有什麼竅門要做?像typedefs,或使用(在C + + 11)? – FCR
如果它是*相同*,爲什麼要隱藏它? –