C++ 模板:根据传入类型动态确定类成员变量类型
您可以使用C++的模板来实现根据传入变量类型而确定成员变量类型的功能。具体的做法如下:
template<typename T>
class A {
private:
std::string a;
T b;
public:
A(const std::string& str, const T& value) : a(str), b(value) {}
};
在上述代码中,类A被定义为一个模板类,模板参数T用于指定变量b的类型。构造函数中的参数value的类型就是T类型。
使用时,您可以根据需要传入不同的类型来实例化A类:
A<int> obj1('example', 10); // 使用int类型实例化A类,b的类型为int
A<double> obj2('example', 3.14); // 使用double类型实例化A类,b的类型为double
通过这种方式,您可以在类A中根据传入变量的类型来确定成员变量b的类型。
原文地址: https://www.cveoy.top/t/topic/qc5i 著作权归作者所有。请勿转载和采集!