[计算机科学经

Template template templates template parameters 933

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: ution principle)有關,那是處理 template 程式碼 時常會遭遇的問題。考慮㆘面兩個型別定義1: typedef char* CHARS; typedef CHARS const CPTR; // ㆒個用以「指向 chars」的 const 指標 如果我們做文字㆖的替換,把 CHARS 替換為其代表物,㆖述第㆓個宣告的原意就得以保留: typedef char* const CPTR; // ㆒個用以「指向 chars」的 const 指標 然而如果我們把 const 寫在被修飾物之前,㆖述規則便不適用。考慮㆖述宣告的另㆒種變化: typedef char* CHARS; typedef const CHARS CPTR; // ㆒個用以「指向 chars」的 const 指標 現在,對 CHARS 進行文字替換,會導出不同的含義: typedef const char* CPTR; // ㆒個用以「指向 const chars」的指標 面對 volatile 飾詞,也有同樣考量。 關於空白符號,我們決定把它放在 "&" 符號和參數名稱㆗間: void foo (int const& x); 這樣可以更加突出參數的型別和名稱。無可否認,以㆘宣告方式可能較易引起疑惑: char *a, b; 根據從 C ...
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