template必須定義于頭文件中
最近在項(xiàng)目中遇到了一個(gè)奇怪的問(wèn)題。
在程序中,A模塊用到了一個(gè)模版函數(shù),這個(gè)模版函數(shù)外部不需要調(diào)用,因此在*.cpp中定義并實(shí)現(xiàn)之。
編譯的時(shí)候奇怪的現(xiàn)象發(fā)生了(VC6 sp5),在debug下,一切正常;在release下,在寫這個(gè)模塊的人那里可以正常編譯且運(yùn)行正常。可拿到我這來(lái)的時(shí)候,就編譯不過(guò)了。我們幾個(gè)師兄弟都沒(méi)轍了,只能等老板來(lái)解決了。
“template必須定義于頭文件中!”老板如是告訴我們。
試之,果不其然!
今日又看《C++標(biāo)準(zhǔn)程序庫(kù)》,在p10頁(yè)注釋4,有記載:“目前template必須定義于頭文件中....."。