使用visual studio編寫c 程序,c 聲明放在a.h檔案裡面,實作放在a.cpp 裡面,為什麼在main.cpp中引用a.h即可使用a.cpp裡實現的類,而引用a.cpp就會報錯。 不是很懂裡面的規則,有沒有大神解釋下。
首先,前者表示你要用這個類,考慮到編譯的過程只要有類別、函數的宣告就可以使用這個類別、函數,在連結的時候連結器會在其他的檔案中尋找類別、函數的定義。而後者你沒有a.cpp實作的類別的聲明,編譯器也不知道這個類,所以才會編譯錯誤。
這裡寫的比較清楚了,可以理解一下http://blog.csdn.net/praker/a...
首先,前者表示你要用這個類,考慮到編譯的過程只要有類別、函數的宣告就可以使用這個類別、函數,在連結的時候連結器會在其他的檔案中尋找類別、函數的定義。而後者你沒有a.cpp實作的類別的聲明,編譯器也不知道這個類,所以才會編譯錯誤。
這裡寫的比較清楚了,可以理解一下
http://blog.csdn.net/praker/a...