C ++ / CLIのマネージコードが算術オーバーフローで例外をスローする方法はありますか?C#にはcheckedキーワードと、これらを有効にするためのグローバルプロジェクトフラグがありますが、C ++/CLIではどちらも見つかりません...
私の状況は、C++ライブラリを.NETでラップしているということです。C++ネイティブコードがオーバーフローすることがあります。機密性の高い計算を既存のC++/ CLIラッパーに移動することを検討していましたが、おそらくこれは不可能ですか?
リンクされた複製は意味がありません。C++/CLI は C++ の規則に従います。C++ には、算術オーバーフローを検出するための組み込みメカニズムがありません。
checkedおよびuncheckedキーワードの使用は、もともと C++/CLI の将来の拡張のために計画されていました。 Ecma-372は現在の言語標準であり、付録 F.2.1 でこの拡張を提案しています。しかし、これは決して起こらず、実装される可能性はほとんどありません。
したがって、オーバーフロー チェックを自分で実装する必要があります。この質問にいくつかのガイダンスがあります。