4

我创建了一个 C# 应用程序,有 3 个项目:

  1. C# 项目 [启动]
  2. 命令行项目
  3. 本机 C++ 项目 [使用 VC90 编译器 (Visual Studio 2008)]

在这里,我在 C++ 项目中有一个简单的类,我正在从 CLI 项目中导出并调用这个类的一个非常简单的方法。

代码构建良好,但是一旦我尝试运行它,它就会退出并显示以下输出消息:

程序“[6088] VS2012_ConsoleApp.exe: Native”已退出,代码为 -1073740791 (0xc0000409)。程序“[6088] VS2012_ConsoleApp.exe: Managed (v4.0.30319)”已退出,代码为 -1073740791 (0xc0000409)。

如果我在堆中创建一个类对象,它工作正常。如果我创建静态对象实例,就会出现错误。

// WORKING CODE [Object creation on heap]   
    NativeClass* cls = new NativeClass();
    int returnVal = cls->Add(A, B);


// This code is not working
    NativeClass cls;
    int returnVal = cls.Add(A, B);
    return returnVal;
4

0 回答 0