Pulihkan header yang telah dikompilasi sebelumnya

Saya memiliki proyek konsol C++ yang saya sertakan header yang telah dikompilasi sebelumnya dalam pengaturannya. Saya tidak sengaja menghapus file dari proyek saya dan sekarang saya tidak dapat mengkompilasinya karena saya mendapatkan error C1083: Cannot open precompiled header file: 'Debug\Project.pch': No such file or directory. Apakah saya harus membuat ulang proyek dan mengimpor semua kode ke dalamnya? Saya mencoba membuat ulang file bernama "stdafx.cpp" yang hanya berisi #include "stdafx.h", tetapi tidak berhasil. Bagaimana cara memperbaikinya?


person einsteinsci    schedule 06.05.2014    source sumber
comment
Menulis kode tanpa menggunakan kontrol sumber adalah Ide yang Sangat Buruk. Kecelakaan ini terjadi, kontrol sumber adalah cadangan Anda.   -  person Hans Passant    schedule 06.05.2014
comment
Tampaknya bersinggungan, Anda tidak akan memeriksa file yang dihasilkan khusus mesin (seperti header yang telah dikompilasi sebelumnya) ke dalam kontrol sumber.   -  person nobody    schedule 06.05.2014
comment
@HansPassant Ini hanya proyek kecil; Saya menggunakan Git untuk sebagian besar proyek saya.   -  person einsteinsci    schedule 06.05.2014


Jawaban (1)


Klik kanan stdafx.cpp di Solution Explorer dan pilih Properties. Di bawah C/C++ > Header yang Telah Dikompilasi, atur "Header yang Telah Dikompilasi" menjadi "Buat (/Yc)". Anda mungkin juga perlu mengatur "File Header yang Telah Dikompilasi" menjadi "stdafx.h" dan "File Output Header yang Telah Dikompilasi" menjadi apa pun yang masuk akal ("$(IntDir)$(TargetName).pch" dalam banyak kasus).

Kecuali ada masalah lain juga, itu sudah cukup.

person dlf    schedule 06.05.2014
comment
Terima kasih! Bekerja dengan sempurna! - person einsteinsci; 06.05.2014
comment
Terima kasih kembali. Saya menghabiskan cukup banyak waktu untuk mencoba menyelesaikan masalah yang sama di masa lalu, dan dengan senang hati menyelamatkan orang lain dari masalah tersebut. - person dlf; 06.05.2014