考虑以下代码:
ref class ClassA
{
};
interface class IClassA
{
void DoSomething(ClassA^ a);
};
使用 Visual C++ 11 Developer Preview 编译此代码会产生以下错误:
error C3981: 'IClassA::DoSomething' cannot be emitted into metadata
如果ClassA
是公开的,则代码编译不会出错。ClassA
如果是非公开的,为什么代码不能编译?