#include#includeusing namespace std;
//引數以引用傳值
templatevoid ref(t const & x)
當我們這樣呼叫:
com("abcd","efg");
會出現錯誤。出錯的原因是字串常量的長度決定了它們的型別。第乙個引數即"abcd"的型別為:char const [5];
第二個引數即"efg"的型別為:char const[4],它們的型別不相同。
改變com函式引數傳遞方式,即以非引用方式傳值,如下:
templatevoid com(t x,t y)
呼叫:
com("abcd","efg");
不會出錯。 C C 程式設計 使用字串作為函式模板的實參
解決方法是宣告為非引用引數 對於非引用型別的引數,在實參演繹的過程中,會出現陣列到指標的型別轉換 這種轉型被稱為decay include include 引用傳參 template typename t inline t const maxref t const a,t const b 非引用傳參...
使用字串程式設計的模板
對函式引數判斷 乙個函式的引數判斷是應該最先考慮的,一般判斷下面的條件。if chars null return 0 if chars 0 0 return 1 字串雙指標的模板 很多時候我們會用雙指標從兩邊遍歷字串,下面就是簡單的模板 bool ispalindrome char s return...
常用字串函式
memset 原型 extern void memset void buffer,int c,int count 用法 include 功能 把buffer所指記憶體區域的前count個位元組設定成字元c。說明 返回指向buffer的指標。舉例 memset.c include include ma...