1

我从 C# 类库创建了一个 .netmodule。我试图从我的 C++ 代码中调用 .netmodule 中的静态 C# 方法。我无法弄清楚这样做的语法(我的 C++ 很弱)。这是我的 C# 方法。

namespace MyModule
{
    public static class VersionChecker
    {
        public static string GetDllVersion()
        {
            //do some stuff
            return version;
        }
    }
}

我已经尝试了以下两种解决方案...

MyModule::VersionChecker.GetDllVersion();
MyModule::VersionChecker->GetDllVersion();    

但我在两条线上都收到以下错误...

error C2143: syntax error : missing ';' before '.'

或者

error C2143: syntax error : missing ';' before '->'

谁能告诉我如何GetDllVersion从我的 C++ 代码中调用静态方法?

4

2 回答 2

7

在 C++ 中,所有对静态成员(或类型)的引用都使用::

MyModule::VersionChecker::GetDllVersion();
于 2013-05-06T14:40:16.110 回答
2

尝试这个:

MyModule::VersionChecker::GetDllVersion();
于 2013-05-06T14:40:21.233 回答