私の C++ プロジェクトの一部として、WinAPI ファイル管理関数でファイル管理構造体を使用しています。一時ファイル名を検索するときOpenNewTempFile()
、名前を生成する関数があり、構造体で別の関数を呼び出すだけでそれを開こうとしOpenFile()
、ファイルが既に存在する場合は、別の名前でサイレントに (そして無限に) 再試行します。ループ)。これはOpenFile()
であり、一時ファイルとして開かれていない場合にのみ、ファイルがすでに存在するというエラーが報告されます。
if
ブロックが実行されている理由を誰か説明できますか? の 2 番目の部分は&&
true であってはなりません。ブロックがヒットすると、下の VS ドックに現在の変数が表示GetLastError()
され、上のコンソール ウィンドウに何が返されるかを確認できます。これは私を少し混乱させています。
編集: 提案により、GetLastError を変数に格納しました。
...まあ、それだけでさらに疑問が生じます。なんで今80なの?