Visual Studio 「アンワインドセマンティクスは有効にはなりません。」#
Visual Studio で次のような警告が表示された。
warning C4530: C++ 例外処理を使っていますが、アンワインド セマンティクスは有効にはなりません。/EHsc を指定してください。
メッセージだけ読んでも何のことか分からないが、
/EHsc
を検索すると、
Visual Studio 公式ドキュメントの
/EH (Exception handling model) | Microsoft Docs
がヒットした。
これによると、C++ 標準の通りに例外を動作させるために
/EHsc
というコンパイルオプションが必要らしい。
Visual Studio における「C++」は Visual C++ であって C++ ではないため、デフォルトでは例外を正しく扱えないのかもしれない。