語法 模板(續)

2021-08-03 13:05:15 字數 1179 閱讀 8140

當使用函式模板初始化函式指標或為函式指標賦值時,編譯器使用指標型別推斷函式模板實參

template

inline

bool compare(const t& lhs, const t& rhs)

bool (*pfunc) (const

int & lhs, const

int & rhs) = compare;

//pfunc = compare;//顯式指出

左值引用(t&)

t&:只能傳遞給它左值:變數、返回引用的表示式

const t&: 可以繫結到任何型別:物件(左值)、臨時物件(右值)、字面常量(右值)

右值引用(t&&)

一般傳入右值,如func(3) 推斷出t為int

通常不允許將右值引用繫結到左值上,但有兩個特例

左值傳遞給模板函式的右值引用引數(t&&)

推斷出實參為左值引用(t&)。因此:func(i),推斷出t為int&而非int

引用摺疊

t&& &和t& &&和t& & 摺疊為t&

t&& && 摺疊為t&&

任何引數型別可以傳給右值引用。

若傳入左值給它,則函式引數例項化為普通的左值引用(t->int & 、int& &&->int&)

通過引用可以保留const屬性

通過右值引用可以保留左右屬性

template

<>

bool compare(const

char* const &p1, const

char* const &p2)

函式模板不能部分特例化,類模板可以部分特例化

template

class blob;

template

blob(it b, it e);

};

可變參模板續 模板模板引數

include include include include include using namespace std 從類模板引入 template t u叫模板引數,更具體叫型別模板引數 前面有typename template typename t,型別模板引數 template class ...

python語法基礎(續 1)

1.基本運算符號 只記一下與其他程式語言不太一樣的 浮點數除法 例 3 2 1.5 關於整數使用 除法上也會得到浮點數結果,不需要特別轉換成浮點數再做除法運算 整數除法 商 例 3 2 1 次方 例 2 3 8 2.字串提取方法 用法說明 提取全部 start 提取 start 至結束 end 提取...

msbuild 語法 MSBuild入門(續)

msbuild基本概念 續 msbuild特殊字元 msbuild保留的一些字元,以及xml中的特殊字元處理。msbuild條件 condition特性,作用類似於c 的if。msbuild屬性 使用環境變數 保留屬性 全域性屬性。msbuild任務 itask介面 usingtask 自定義任務 ...