[计算机科学经

void appendelementtype pm inline sizet length const c

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: 處理兩個問題: 何時具現 templates,以及 templates 被定義於何處。因此儘管這兩個問題從源碼角度來看並不互 相影響(neatly decoupled),但在幕後編譯系統卻為它們建立了㆒種不可見的耦合關係(invisible coupled)。這個關係或許可以這樣解釋:當包含 template 定義式的檔案發生變化時,這個檔案, 以及所有「具現化該 template」的檔案,都不得不重新編譯。這和「置入式模型」看起來並無本 質㆖的區別,但是從源碼角度,這種關係卻沒有那麼明顯。這樣的後果是,許多以「源碼級 (source-base)技術」來管理依存關係(dependency)的工具,例如十分普及的 make 和 nmake 工具程式,如果像對待傳統 non-template 程式碼㆒樣㆞對待 exported template 程式碼,將無法正 確運作。這也意味編譯器不得不花很多功夫去逐㆒牢記(bookkeeping)這些依存關係。最終結 果是:使用 exported template 並不比使用「置入式模型」節省多少編譯時間。 最後㆒點:exported templates 有可能導致令㆟大吃㆒驚的語意問題。第 10 章會談到此㆒問題的 細節。 很多㆟對 export 有㆒個誤解:他們覺得這麼㆒來...
View Full Document

This note was uploaded on 08/25/2012 for the course EECS 101 taught by Professor Wre during the Fall '12 term at Beacon FL.

Ask a homework question - tutors are online