当我们使用C++模板时,通常可以使用多个不同的变量进行实例化。但是在不过载的情况下,我们无法使用3个不同的变量来创建一个模板。
下面是一个简单的示例代码,展示了如何使用2个不同的变量来创建一个模板类。
#include
template
class MyTemplate {
public:
MyTemplate(T t, U u) : t(t), u(u) {}
void print() {
std::cout << "t: " << t << ", u: " << u << std::endl;
}
private:
T t;
U u;
};
int main() {
MyTemplate obj(10, 'a');
obj.print();
return 0;
}
在上面的示例中,我们创建了一个名为MyTemplate
的模板类,该类接受两个不同的模板参数T
和U
。在main
函数中,我们实例化了一个MyTemplate
对象,并使用整数和字符类型作为参数。
输出结果为:
t: 10, u: a
这证明了我们可以在不过载的情况下,使用2个不同的变量来创建一个模板类。但是在C++中,不支持使用3个不同的变量创建一个模板类。