1

在 VS 2012 中,当通过预期的0位置时,我收到错误 C4965(Implizites Boxing mit ganzer Zahl 0. Verwenden Sie "nullptr" oder eine explizite Umwandlung) 。Platform::Object^代码的意图确实是传递整数值 0,而不是空引用。显然,在 C++/CLI 等中,有一个 __box 关键字可以使用,但 C++/CX 编译器无法识别。

那么:抑制此警告并创建盒装 WinRT 整数的正确方法是什么?

4

1 回答 1

3

根据 MSDN,您应该使用显式装箱。它建议

safe_cast<System::Object^>(0)

...所以你要明确它不是 nullptr。在您的情况下,这可能是:

safe_cast<Platform::Object^>(0)
于 2012-07-25T10:58:01.307 回答