腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
将
enable_if
与
结构
专门化
结合
使用
、
、
我想
使用
enable_if
来捕获所有的算术类型。下面是我在这方面的尝试,它抱怨模板被2个参数重新声明。我尝试
将
第二个虚拟参数添加到主模板,但得到了不同的错误。如何做到这一点?struct storage_type<std::string> { typedef std::string type; }; template <typename T, typename std::
enable_if
浏览 3
提问于2017-03-09
得票数 6
2
回答
SFINAE模板
专门化
匹配规则
、
、
我正在学习
使用
类/
结构
模板
专门化
的SFINE,在一个细微的例子中,我对匹配规则感到有点困惑。) std::cout << "general";}; struct Foo<T, typename std::
enable_if
std::cout << "specialized";}; { Foo<i
浏览 6
提问于2022-07-17
得票数 2
回答已采纳
1
回答
依赖于std::
enable_if
的模糊部分
专门化
、
,std::is_base_of<C<int>, B<int>>::value是true,因此std::
enable_if
<...这会导致“不明确的部分
专门化
”错误,因为编译器无法在第一和第二部分
专门化
之间作出决定。到现在为止还好。但是,当我
将
std::
enable_if
中的代码替换为简单的true (即第二个部分
专门化
就是template <class T> class A<T, typename std::
enabl
浏览 0
提问于2017-02-22
得票数 5
回答已采纳
1
回答
多个枚举值的一个模板
专门化
、
、
、
DataHolder}; class DataHolder<Modes::m1> public: int a = 4;然后,如果我想对Modes::m1进行
与
Modes::m2相同的
专门化
,我
将
再次编写相同的
专门化
。是否有方法为多个枚举值编写一个
专门化
?我已经和SFINAE试过了,但我没有成功。template <Modes M, typename = void>{ templ
浏览 0
提问于2018-11-28
得票数 6
回答已采纳
2
回答
enable_if
结构
定义和默认模板参数
、
根据
enable_if
结构
的定义:struct
enable_if
{}; struct
enable_if
<true, T> { typedef T type; };template<class T> T foo(T t, typename std::
enable_if
<std::is_integral<T>::val
浏览 1
提问于2012-11-13
得票数 2
回答已采纳
1
回答
从
enable_if
'd base继承
、
、
、
、
我正在尝试部分
专门化
非字符数组的特征:struct is_container : std::false_type {}; struct is_container<T[N]>Visual Studio2010给了我一个C2039 (type不是<
浏览 1
提问于2011-09-12
得票数 6
回答已采纳
2
回答
模板
结构
中带有std::
enable_if
的const *的模糊部分
专门化
、
、
、
当
使用
std::
enable_if
和经过模板化的
结构
时,会导致const int*的不明确的部分
专门化
。在下面的示例中,编译器会在注释行未注释和std::
enable_if
未
使用
时,在编译中没有问题时,抱怨是否
使用
了std::
enable_if
。BP<t,d,config>>: std::true_type{}; ,
浏览 15
提问于2022-03-07
得票数 0
3
回答
在模板中区分整数和浮点类型
、
例如,可以用a==b来比较ints,而比较浮点数则应该
使用
abs(a-b)。 要做到这一点,一种方法是
将
代码的不同部分分离出来,使之成为小函数,并对每种类型的模板进行
专门化
。因此,问题是:是否可以一次为多个类型
专门化
模板函数?
浏览 0
提问于2013-11-14
得票数 6
回答已采纳
4
回答
使用
默认参数的模板
专门化
、
template <bool B, typename T = void> struct
enable_if
{ };template <typename T> struct A<T, typename
enable_if
void f() { }int main() {
浏览 0
提问于2014-04-03
得票数 1
2
回答
如何为所有派生类型部分
专门化
类模板?
、
、
、
我想为基类和所有派生类部分
专门化
不能更改的现有模板(std::tr1::hash)。原因是我对多态性
使用
了奇怪的递归模板模式,并且散列函数是在CRTP基类中实现的。,只
与
CRTPBase<Derived>匹配。我想要的是一种当且仅当它派生自CRTPBase<Derived>时为Derived编写部分
专门化
的方法。如果我可以更改std::tr1::hash,我只需要添加另一个虚拟模板参数来
使用
boost::
enable_if
,正如
enable_if
浏览 1
提问于2009-06-23
得票数 10
回答已采纳
2
回答
如何
使用
std::atomic<T>::is_always_lock_free进行SFINAE?
、
、
如何
将
std::atomic<T>::is_always_lock_free
与
SFINAE
结合
使用
?class MyClass {}; class MyClass<T, typename std::
enable_if
}; _Atomic不能应
浏览 8
提问于2017-10-25
得票数 3
回答已采纳
3
回答
如果模板为整数类型,则仅为某些模板规范启用函数。
、
、
如果与不正确维度的向量一起
使用
,我希望得到一个编译错误。我已经看了很多遍,我认为非常接近的东西之一是std::
enable_if
,但是,我不知道如何将它用于我的特定情况(条件是Dim == x或Dim > x)。顺便说一下,我正在
使用
C++17。
浏览 1
提问于2021-03-22
得票数 2
回答已采纳
1
回答
如何根据一个条件和多少个参数来
enable_if
一个
结构
?
、
这个条件是任意的,所以它需要一个
enable_if
或类似的东西,但是在这个例子中,我将使它成为一个类型比较。OtherArgs> template <typename Arg> struct Get<typename st
浏览 4
提问于2014-10-19
得票数 1
回答已采纳
3
回答
使用
SFINAE进行模板类的
专门化
、
、
、
template<typename T> class Data;{ static const bool value = /* some magic here (not the question) */; }; 但是,这有两个模板参数,因此
与
前一个声明相冲突,其中User<>只
使用
一个模板参数
浏览 0
提问于2012-10-12
得票数 44
回答已采纳
3
回答
为某些具有模板参数限制的外部模板类定义部分
专门化
、
、
、
、
我想把std::
enable_if
和std::is_base_of
结合
使用
。类的std::
enable_if
可用作模板参数。template<template<typename, std::size_t> class T, typename TArg, std::size_t NArg, : public integral_constant<std:
浏览 2
提问于2016-08-19
得票数 3
回答已采纳
1
回答
使用
数组的模板
专门化
,std::is_array
、
、
、
std::is_array的
专门化
。对我来说,第一个谜团是,"int anum“的
专门化
从来没有被抓住!函数参数始终具有int*类型。" << num << endl; { } 因此,我的问题是:
结合
模板函数参数,是否合理地
使用
了std::is_array?我有任何方法来检测(不管有没有SFI
浏览 4
提问于2012-11-13
得票数 2
回答已采纳
1
回答
根据成员变量类型的存在情况有条件地定义成员变量
、
假设我有一个用于数据的
结构
:}class TestContainer { TestData data;两者都是从多个测试文件中
使用
的宏在现在,如果没有定义TestData
结构
,我希望在编译时删除数据成员。如果一个测试不需要数据,那么就没有必要定义数据成员(并且它会产生不被
使用
的警告)。我曾想过
使用
std::
enable_if
,但没有想出一个条件。另一种方法是如所示定义基模板类和
专门化<
浏览 1
提问于2019-03-29
得票数 0
回答已采纳
2
回答
在仅具有模板化返回类型的函数模板中混合
使用
模板
专门化
和
enable_if
、
、
、
我有以下代码无法在VC2010上编译:typename
enable_if
<true, C>::type{ return C(); } bool{ return true; } // error C2785: '
enable_if
types { auto a = fo
浏览 0
提问于2011-09-29
得票数 1
回答已采纳
1
回答
针对各种集合的模板类部分
专门化
、
、
、
我试图编写两个模板部分
专门化
,它们应该以不同的方式处理序列化序列容器和关联容器,但是似乎根本没有
使用
序列容器
专门化
,因为编译器试图用错误的
专门化
来
专门化
它,下面是代码:class Archiver<W, C<T, Args...>>public: template<typename U = C<T, Args...>, typename std::
enable_if
contai
浏览 1
提问于2016-03-12
得票数 1
回答已采纳
2
回答
模板参数中的
enable_if
创建模板重定义错误
、
、
、
、
在中,我真正想要做的是在模板参数中定义一个typename,它可以在转换和返回中
使用
。所以这个:typename std::
enable_if
<sizeof(unsigned char) == sizeof(T), unsigned char== sizeof(T), unsigned char>::type >对于单个模板
专门化
,
浏览 2
提问于2015-02-23
得票数 2
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
将深度学习与GIS相结合
结构光和人工智能的结合或将塑造通信的未来
碳纤维如何与3D打印结合使用?
使用 NineData GUI 创建与修改 ClickHouse 表结构
中医链如何将中医与区块链结合?
热门
标签
更多标签
云服务器
ICP备案
对象存储
腾讯会议
云直播
活动推荐
运营活动
广告
关闭
领券