1

0VS 2012 では、予期される場所を通過するときに、エラー C4965 (Implizites Boxing mit ganzer Zahl 0. Verwenden Sie "nullptr" oder eine explizite Umwandlung) が発生しPlatform::Object^ます。このコードの意図は、null 参照ではなく、整数値 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 に答える