8.18在類模板外定義成員函式,實現3個數求和
阿新 • • 發佈:2019-01-29
#include<iostream> using namespace std; template<typename T> //模板宣告,其中T為型別引數 class sum{ //類模板名為sum private: T x,y,z; public: sum(T a,T b,T c); T add(); void print(); ~sum() //定義解構函式 {} }; template<typename T> sum<T>::sum(T a,T b,T c) //定義建構函式 { x=a; y=b; z=c; } template<typename T> T sum<T>::add() //定義求和函式 { return x+y+z; } template<typename T> void sum<T>::print() //定義輸出函式 { cout<<x<<" "<<y<<" "<<z<<endl; } int main() { sum<int> s1(4,5,6); sum<double> s2(4.4,5.5,6.6); cout<<"三個整數分別為:"<<endl; s1.print(); cout<<"三個整數之和為:"<<s1.add()<<endl; cout<<"三個雙精度數分別為:"<<endl; s2.print(); cout<<"三個雙精度數之和為:"<<s2.add()<<endl; return 0; }