您的位置:首页 > 其它

类模板语法基础

2016-09-13 16:10 204 查看
#include <iostream>
#include <string>
using namespace std;

//类模板的创建
//类中的属性,类型参数化

//我们把数据类型,进一步 抽象化。。。
//抽象化的数据类型,不能直接使用。。
template <typename T>
class A
{
public:
T getT()
{
return t;
}
void setT(T t)
{
this->t = t;
}
protected:
private:
T t;
};

template <typename T>
void TemplatePrint(A<T> *p)
{
cout << p->getT() << endl;
}
int main()
{
A<string> sa;
sa.setT("hello world");
TemplatePrint(&sa);

A<char> ca;
ca.setT('T');
TemplatePrint(&ca);

return 0;
}


#include <iostream>
#include <string>
using namespace std;

//类模板的创建
//类中的属性,类型参数化

//我们把数据类型,进一步 抽象化。。。
//抽象化的数据类型,不能直接使用。。
template <typename T>
class A
{
public:
A(T t)
{
this->t = t;
}
A()
{
}
T getT()
{
return t;
}
void setT(T t)
{
this->t = t;
}
protected:
private:
T t;
};

template <typename T>
void TemplatePrint(A<T> *p)
{
cout << p->getT() << endl;
}

template <typename T1,typename T2>
class B :public A<T2>
{
public:
B(T1 b, T2 a) :A<T2>(a)
{
this->b = b;
}
protected:
private:
T1 b;

};
int main()
{
A<string> sa;
sa.setT("hello world");
TemplatePrint(&sa);

A<char> ca;
ca.setT('T');
TemplatePrint(&ca);

B<bool,string> b(false, "going");

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: