/******************************************************<br /> * 功能: 函數模版和類模版的使用<br /> * 時間:2011-04-26<br /> ******************************************************/<br />#include <iostream></p><p>using namespace std;</p><p>#define _DEBUG_FUNCTION_TEMPLATE<br />#define _DEBUG_CLASS_TEMPLATE</p><p>#ifdef _DEBUG_FUNCTION_TEMPLATE<br />/*函數模版*/<br />template<class T><br />T Add(T a, T b){<br /> T c;<br /> c = a+b;<br /> cout<<"函數模版內計算結果:"<<c<<endl;<br /> return c;<br />}<br />#endif</p><p>#ifdef _DEBUG_CLASS_TEMPLATE<br />template<class T><br />class TempClass{<br /> public:<br /> TempClass(){};//注意要有{}<br /> T Add(T a, T b){<br /> T c;<br /> c = a+b;<br /> cout<<"類模版內計算結果:"<<c<<endl;<br /> return c;<br /> };<br /> virtual ~TempClass(){};<br />}; //注意要有;<br />#endif<br />int main()<br />{<br />#ifdef _DEBUG_FUNCTION_TEMPLATE<br /> cout<<"調用函數模版計算結果:"<<Add<int>(3,4)<<endl;<br />#endif</p><p>#ifdef _DEBUG_CLASS_TEMPLATE<br /> TempClass<int> templt;<br /> cout<<"調用類模版計算結果:"<<templt.Add(3,4)<<endl;<br />#endif<br /> return 0;<br />}<br />