您的位置:首页 > 其它

两个成员的类模板

2016-06-06 17:02 225 查看
//
//  main.cpp
//  project
//
//  Created by 徐伟 on 6/5/16.
//  Copyright © 2016 fizz_i. All rights reserved.
//

#include <iostream>

using namespace std;
template<class T1,class T2>
class  Test{
public:
Test(T1 date1,T2 date2);
Test(Test &a);
void SetData1(T1 val);
void SetData2(T2 val);
T1 GetData1();
T2 GetData2();
private:
T1  data1;
T2  data2;
};
template<class T1,class T2>Test<T1,T2>::Test(T1 data1,T2 data2):data1(data1),data2(data2){}
template<class T1,class T2>Test<T1,T2>::Test(Test &a)
{
data1=a.data1;
data2=a.data2;
}
template<class T1,class T2>inline void Test<T1, T2>::SetData1(T1 val)
{
data1=val;
}
template<class T1,class T2>inline void Test<T1, T2>::SetData2(T2 val)
{
data2=val;
}
template<class T1,class T2>inline T1 Test<T1,T2>::GetData1()
{
return data1;
}
template<class T1,class T2>inline T2 Test<T1,T2>::GetData2()
{
return data2;
}
int main()
{
Test<int, double>a(5,4.2),b(a);
cout<<a.GetData1()<<" "<<a.GetData2()<<endl;
a.SetData1(6);
a.SetData2(5.6);
cout<<a.GetData1()<<" "<<a.GetData2()<<endl;
cout<<b.GetData1()<<" "<<b.GetData2()<<endl;
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: