夫妻找做伙食飯工作哪個網(wǎng)站好網(wǎng)頁制作軟件
首先我們要直到C++程序運(yùn)行需要進(jìn)行的四個階段。
預(yù)處理->編譯->匯編->鏈接
編譯:對語法語義分析,分析無誤生成匯編,頭文件不參加編譯,多個源文件是分開單獨(dú)編譯的。
鏈接:將多個obj文件鏈接合成一個,并處理沒有解決的地址問題。
如果我們模板聲明和定義分離會報(bào)一個鏈接的錯誤
在test.cpp中add(1,2)會調(diào)用add<int>,但是a.cpp中編譯器沒有看到對add<int>的調(diào)用,就不會實(shí)例化出一份代碼。
所以在鏈接時(shí)會去尋找被實(shí)例化的代碼,就會報(bào)鏈接的錯誤。