腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
如何
使用
enable_if
检测
原子
类型
c++
是否可以
使用
enable_if
检测
我的
原子
类型
是否为
原子
类型
? 目前,我的
原子
类型
是用来区分被
检测
为类
类型
的 有没有办法将它区分为
原子
类型
?
浏览 8
提问于2021-10-05
得票数 1
回答已采纳
1
回答
要求约束必须计算为bool。所以没有SFINAE
c++
、
c++-concepts
、
c++20
我对“
原子
约束”一章很好奇因为我可以看到某些模板
类型
在遍历表达式后是
如何
导致bool的,而不是其他模板
类型
。现在我们又需要
使用
enable_if
之类的东西了。很痛吗?
浏览 0
提问于2018-11-27
得票数 1
回答已采纳
2
回答
检测
类型
何时不需要调用其析构函数
c++
、
templates
、
typetraits
我正在编写一个与C++11 STL兼容的分配器,我想知道
如何
检测
哪些
类型
不调用它们的析构函数(在allocator<T>::destroy方法中)是安全的。在我看来,发出这个警告似乎是因为这个分配程序
使用
的一些类没有析构函数(例如,因为它们是POD,等等)。我认为我可以编写上述destroy方法的两个版本,
使用
enable_if
重载,并在重载(即不需要销毁的类)中保留主体空和未命名的参数。这个能行吗? 另一方面,这个警告是一个很小的不便。然而,如果我真的试图改变我的代码,并<
浏览 3
提问于2014-01-06
得票数 5
回答已采纳
3
回答
用于类模板专门化的
enable_if
,其中包含非空参数
c++
、
template-meta-programming
、
template-specialization
、
enable-if
、
class-template
enable_if_t<std::is_floating_point_v<T>, void>> {但是,当void以外的
类型
被用作
enable_if
的参数时,我不明白为什么选择失败class A<T, std::enable_if_t<std::is_floating_point_v<T>,这个问题产生于可以
使用
自定义
浏览 17
提问于2022-05-03
得票数 2
回答已采纳
2
回答
用于派生特定
类型
的函数模板专门化
c++
、
templates
、
template-specialization
class base}; { { foo<derived>();我想专门化T= base的派生的foo。这是可能的吗?还是我需要专门针对base本身?
浏览 1
提问于2011-10-19
得票数 1
1
回答
CPP:错误:不能引用默认构造函数--它是一个已删除的函数。
c++
如下所示: 如果不
使用
浏览 2
提问于2021-10-19
得票数 0
3
回答
enable_if
检查迭代器的值
类型
是否为一对
c++
、
c++11
我想为值
类型
为对的迭代器编写一个专门的模板函数。我的期望是,这应该与std::map的迭代器匹配。为了
检测
出这对:struct is_pair : std::false_typestruct is_pair<std::pair<const T, U>> : std::true_type然后在函数声明中
浏览 2
提问于2017-05-16
得票数 6
1
回答
条件显式模板实例化
c++
、
templates
、
c++11
除了预处理器,我
如何
有条件地启用/禁用显式模板实例化?我希望
检测
这些
类型
是相同的,并且不是在Type3和Type4上实例化的,如下面的template struct TheTemplate<Type1>;template struct TheTemplate<
enable_if
<!is_same<Type1, Type3>::va
浏览 1
提问于2012-12-18
得票数 7
回答已采纳
3
回答
寻找可用于`is_allocator`的`
enable_if
`
类型
特征
templates
、
c++11
、
template-meta-programming
、
sfinae
、
enable-if
是否有一种“足够”可靠的方法来
检测
模板参数中的分配器。也就是说,我需要类似于is_allocator
类型
的特性,可以在
enable_if
中
使用
。Args is_allocator<Alloc>::valueArgs std::i
浏览 3
提问于2014-01-27
得票数 5
1
回答
我能否在编译时判断Boost.Phoenix lambda的一组特定输入
类型
是否有效?
c++
、
boost
、
lambda
、
boost-phoenix
假设我有一个Boost.Phoenixλ表达式,如下所示:在给定与参数_1、_2等相关的
类型
列表的情况下,是否有一种好方法可以在编译时
检测
lambda表达式是否有效我在考虑
使用
enable_if
来确定输入
类型
是否受lambda支持。如果是,那么将直接调用lambda,如果不是,我希望生成一个no-op。伪代码可能是这样的:
enable
浏览 10
提问于2013-02-15
得票数 2
回答已采纳
1
回答
如何
使用
enable_if
限制整个类
c++
、
c++11
我知道我可以
使用
static_assert并确保
类型
T是数字
类型
,但我想
使用
std::
enable_if
。
如何
强制下面的Vector3D类只
使用
std::
enable_if
或std::conditional而不继承?Vector3D private:};template<typename T> class Vector3D<typename std::
enabl
浏览 2
提问于2013-06-07
得票数 3
回答已采纳
1
回答
删除因在opencv矩阵编译时不知道
类型
而造成的重复开关语句?
c++
、
refactoring
、
qt
、
switch-statement
、
c++14
基本上,每次我需要执行涉及我的矩阵及其
类型
的操作时,都有相同的开关语句结构(它是在运行时根据文件和用户输入动态设置的)。false, "unknown type format")); } 通常,函数签名(或者我决定在开关情况下做的其他任何事情)都是一致的,除了大多数情况下的
类型
外Opencv
使用
这些整数来更改矩阵的
类型
。这就是我要打开的。我能做些什么来减轻这种情况呢?或者这种锅炉板是必需的?采用另一个函数的模板函数似乎无法工作,因为它们无论
如何
浏览 0
提问于2018-07-27
得票数 1
回答已采纳
1
回答
C++11 -
enable_if
-类定义之外的函数实现
c++
、
c++11
如何
使用
具有
enable_if
的模板实现函数?class Testpublic: ~Test(){} void do_something(T v); template<typename T, typename std::
enable_if
&
浏览 2
提问于2017-04-29
得票数 3
回答已采纳
2
回答
是否可以
使用
std::
enable_if
选择成员模板专门化?
c++
、
templates
、
c++11
、
template-specialization
给定一个类声明 template <typename T> T foo();我想专门化各种
类型
的A::foo (int,...)和T的
类型
类(POD,非POD)。不幸的是,我似乎不能为后者
使用
std::
enable_if
。以下代码无法编译:typename std::
enable_if</e
浏览 1
提问于2012-10-26
得票数 9
回答已采纳
1
回答
如何
SFINAE启用返回`auto`的成员函数
c++
、
c++11
、
auto
、
sfinae
在模板元编程中,可以在返回
类型
上
使用
SFINAE来选择某个模板成员函数,即 int sum() const noexcept private: template<int I> typename std::
enable_if
< I,int>::type _sum() const noexcept { return _sum<I-1
浏览 0
提问于2013-01-30
得票数 3
回答已采纳
2
回答
使用
std::
enable_if
声明带有可变模板args的括号运算符
c++
、
templates
、
gcc
、
c++11
、
sfinae
.); T* ptr;但是,当我对T
类型
使用
smart_ptr类而不
使用
operator ()时,它无法编译(这是正确的)。我想要的是只在T有std::
enable_if
时才
使用
operator ()来启用成员函数。当我开始这么做的时候,它变得很模糊和复杂,因为我想用SFINAE来
检测
T是否有operator (),然后将它和std::
enable_if
结合起来得到我想要的东西。然而,我在创建SFINAE时迷失了方向,因为
浏览 0
提问于2012-11-27
得票数 0
回答已采纳
2
回答
如何
让SFINAE与模板专门化一起工作?
c++
、
c++11
、
templates
、
sfinae
、
enable-if
我希望有几种不同的实现:对于T、vector<T>和vector<vector<T>>,其中T是内置
类型
或一些复杂的类。我想
使用
SFINAE来分离内置
类型
和类的实现,并限制一组允许的
类型
。<isType<T>(), void>::typeinline typename
enable_if
<!isType<T>(), void&g
浏览 16
提问于2019-06-04
得票数 2
2
回答
std::
enable_if
的第二个参数有什么用?
c++
、
templates
、
generics
、
c++11
、
enable-if
我对std::
enable_if
的第二个参数感到困惑。在
使用
返回
类型
的int时,我们可以
使用
:typename std::
enable_if
<mpi::is_builtin<T>::value, int>::typefoo() { return 1; }template<class
浏览 3
提问于2013-09-24
得票数 5
回答已采纳
3
回答
如果类成员typedef不存在,则
使用
默认
类型
的模板专门化
c++
、
templates
我正在尝试编写
使用
模板参数的成员
类型
定义函数的代码,但是如果模板参数没有该
类型
定义
类型
,我想提供一个默认
类型
。有人能解释一下这里发生了什么以及
如何
修复它,或者用另一种方法来实现同样的目标吗?编辑:template <class T, class Enable = void> class A
浏览 1
提问于2010-06-10
得票数 15
回答已采纳
1
回答
std::
enable_if
如何
防止成员模板的声明?
c++
、
class
、
c++11
、
templates
、
sfinae
Stroustrup C++第4版第796页指出 是因为缺少返回
类型
,::type使模板构造成格式错误的语言?#include <type_traits> template<bool B, typename
浏览 3
提问于2020-07-26
得票数 2
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
如何使用Python检测和识别车牌?
实战贴:如何使用机器学习检测欺诈?
如何正确使用样本扩充改进目标检测性能
如何使用机器学习进行异常检测和状态监控?
如何使用示波器探头对被测电路进行检测
热门
标签
更多标签
云服务器
ICP备案
实时音视频
即时通信 IM
对象存储
活动推荐
运营活动
广告
关闭
领券