我正在尝试在 VB.NET 中创建一个遗留 c++ 类的实例。我已按照以下网页上的说明进行操作:http: //windowsdevcenter.com/pub/a/dotnet/2004/03/29/mcpp_part3.html? page=2
1) 使用一个文件 (MFoo.cpp) 和以下代码创建了一个 Visual C++ 项目:
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。