C++ Builder XE4
において @yumetodo 様からコメントをいただきました。
今後検索で見つけたいため、記事としてここに切出します。
ZeroMemory()は最適化で消えるというのは知りませんでした。
代わりのSecureZeroMemory()の存在も知りませんでした。
情報感謝です。
(2018/11/16追記)
@ryoco さんのコメントにてZeroMemory()が最適化で消える場合と消えない場合について教えていただきました。
情報感謝です。
関連情報
Windowsデベロッパーセンター
SecureZeroMemory function
Use this function instead of ZeroMemory when you want to ensure that your data will be overwritten promptly, as some C++ compilers can optimize a call to ZeroMemory by removing it entirely.
To avoid any undesired effects of optimizing compilers, use the SecureZeroMemory function.
(余談) ZeroMemory macro。マクロ? (ZeroMemory functionでなく)