我最近開始使用C++進行編碼,並且遇到了一些我認爲需要關於計算機知識的錯誤。編譯代碼太快會產生錯誤
當我編寫一個簡單的代碼(在Visual Studio Express 2013中)時,我們假設一個「Hello World!」例如,我內部版本和開始不調試成功。 然後,當我編輯我的代碼打印兩個數字的總和時,例如,當我嘗試構建時出現錯誤。我得到這個錯誤:
Error 1 error LNK1168: cannot open c:\users\name\documents\visual studio 2013\Projects\ConsoleApplication4\Debug\ConsoleApplication4.exe for writing
但是,如果我等了一下,然後重新嘗試建立,一切都很好。
當我在標準cmd模塊中使用g ++時,我也注意到了這一點;如果我嘗試使用相同的名稱(對於.exe文件)編譯代碼,則會出現Access Denied(訪問被拒絕)錯誤,但是如果稍等一會,我可以執行此操作。
我的直覺告訴我,在我執行它後,計算機仍然運行了一下.exe文件,它不允許我覆蓋它。
是的,進程可能需要一段時間才能完成超出窗口關閉。 – chris
儘管如此,除非你真的很快編程(作爲一個新手似乎不太可能),這個延遲不應該通過這樣一個簡單的程序顯而易見。 –
將「計算機仍然運行的.exe文件」改爲「操作系統仍有一個進程,其內存空間包含可執行映像」,並且您的觀察結果是正確的。 –