gpt4 book ai didi

c++ - 使用文字为模板类型赋值

转载 作者:行者123 更新时间:2023-11-28 03:42:52 25 4
gpt4 key购买 nike

除了对基本类型或强制转换使用显式初始化之外,还有其他方法可以在构造函数中为模板类成员赋值吗?

template <class T>
struct A
{
public:
T member;

A() :member(T()) // or :member(static_cast<T>(1.0f))
{}
};

我想在构造函数中为 member 赋值 1.0。我可以在不强制转换的情况下执行此操作吗?

最佳答案

是的,使用整数,它可以隐式转换为任何数字类型:

template <class T>
struct A
{
public:
T member;

A() : member(1)
{}
};

int main()
{
A<int> a1;
A<double> a2;
A<float> a3;
return 0;
}

关于c++ - 使用文字为模板类型赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8552250/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com