学习C++模板---模板类带简单参数
模板类不但可以定义类型,还可以定义普通参数类型。
// atl004.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <process.h>
#include <iostream>
//
//学习C++模板(3)。
//蔡军生/12/05
//
//
//模板类带简单参数。
//蔡军生2006/12/05
//
template< typename T, int nMax >
class CTestVector
{
public:
CTestVector(T vec)
{
for (int i = 0; i < nMax; i++)
{
m_vec[i] = vec;
}
}
void print(void)
{
for (int i = 0; i < nMax; i++)
{
std::cout<< m_vec[i] << std::endl;
}
}
protected:
private:
T m_vec[nMax];
};
//
//程序入口点。
//
int _tmain(int argc, _TCHAR* argv[])
{
//int实例。
CTestVector< int, 2 > testInt(10);
testInt.print();
//float实例。
CTestVector< float, 3 > testFloat( 3.14159f );
testFloat.print();
//double实例。
double dA = 1.55233f;
CTestVector< double, 5 > testDouble(dA);
testDouble.print();
//
//暂停.
//
system("pause");
return 0;
}
输出结果:
10
10
3.14159
3.14159
3.14159
1.55233
1.55233
1.55233
1.55233
1.55233
请按任意键继续. . .