我想在VB.NET中創建一個傳統C++類的實例。我按照以下網頁上的說明:http://windowsdevcenter.com/pub/a/dotnet/2004/03/29/mcpp_part3.html?page=2類在這種情況下不可用,因爲它是朋友
1)創建的Visual C++項目有一個文件(MFoo.cpp)和下面的代碼:
class Foo
{ public:
// constructor
Foo(void) {}
// destructor
~Foo(void) {}
// some method
void DoSomeFoo(){} };
__gc class MFoo
{ public: Foo * _foo;
public:
// constructor
MFoo() { _foo = new Foo();}
// destructor
~MFoo() { delete _foo; }
// method
void ManagedDoSomeFoo() { _foo->DoSomeFoo(); } };
2)內置在Visual C + +項目生成DLL 3)在VB.NET應用程序中創建了DLL的引用(在第2部分中創建)
當我嘗試創建C++對象的實例時,我現在得到一個錯誤,即Dim foo As New MFoo 。錯誤是:MFoo在此上下文中不可用,因爲它是Friend。
C++/CLI更換線
__gc class MFoo
!=託管C++ – user1937198 2013-03-02 15:51:26@ user1937198指出。我已經重新簽名。 – w0051977 2013-03-02 15:53:12