template<typename T>
class ClassName {
// 类的成员和方法
// 可使用类型参数T
};
定义类模板:使用template关键字和类型参数声明类模板,定义类的成员和方法,并在需要时使用类型参数。例如:
template<typename T>
class Stack {
// 类模板定义的成员和方法
};
实例化类模板:通过提供具体的类型参数来实例化类模板,并创建特定类型的对象,编译器会根据具体的类型参数生成相应的类代码。。例如:
Stack<int> intStack; // 实例化一个存储整数的堆栈
Stack<string> stringStack; // 实例化一个存储字符串的堆栈
使用实例化后的对象:对于每个实例化后的类,你可以像使用任何其他类一样使用它,调用它的成员函数,访问它的成员变量,并根据需要进行操作。
intStack.push(10); // 调用intStack对象的push方法
int poppedItem = intStack.pop(); // 调用intStack对象的pop方法
类模板可用于实现通用数据结构(如堆栈、队列和链表)或通用算法。通过使用类模板,你可以设计一次性适用于多种数据类型的代码,提高代码的重用性和灵活性。