gpt4 book ai didi

c++ - 类型之间是否有类型特征检查包含?

转载 作者:行者123 更新时间:2023-11-30 02:17:01 25 4
gpt4 key购买 nike

我正在寻找能够知道一个类型的范围是否包含在另一个类型中的类型特征。 is_included_in<T,U>::value 的类型特征是true当每个类型的值 T可以存储为 U 类型的值.示例:

is_included_in<float,double>::value; // true
is_included_in<double,float>::value; // false
is_included_in<int,double>::value; // true
is_included_in<bool,long int>::value; // true
is_included_in<long long int,float>::value; // false

Boost 中有什么东西可以做到这一点吗?还是我自己写?

注意:出于兼容性原因,我不使用 C++11。

最佳答案

不,您必须自己制作。

话虽这么说,如果你想用它来使算术转换值安全,Boost 已经有了 numeric_cast实现了这一点。

因此,根据您的目标,您可能不需要特质。

至少您可以检查 numeric_cast 实现并使用其原理来构建您自己的特征。

关于c++ - 类型之间是否有类型特征检查包含?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54109509/

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