C++模板编程是一种强大的编程技巧,它允许程序员在编译时执行泛型编程,从而编写出更加通用、可复用和类型安全的代码。C++模板主要有两种类型:类模板和函数模板。
template <typename T>
class MyClass {
public:
MyClass(T value) : value_(value) {}
T getValue() const {
return value_;
}
private:
T value_;
};
在这个例子中,MyClass
是一个类模板,T
是一个类型占位符,表示任何类型。你可以使用不同的类型实例化这个模板,例如 MyClass<int>
、MyClass<float>
等。
template <typename T>
T add(T a, T b) {
return a + b;
}
在这个例子中,add
是一个函数模板,T
是一个类型占位符,表示任何类型。你可以使用不同的类型调用这个模板函数,例如 add<int>(1, 2)
、add<float>(1.0f, 2.0f)
等。
C++模板编程的优点:
C++模板编程的缺点: