腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
文章
问答
(9999+)
视频
沙龙
1
回答
使用
带有
constexpr
参数
的
std
::
enable_if
进行
重载
解析
不能按
预期
工作
、
、
、
我试图根据其中一个模板
参数
的
类型为函数模板添加函数
重载
,并将定义为consexpr
的
参数
传递到其他地方以帮助解决
重载
问题。T,void footypename
std
::
enable_if
&
浏览 20
提问于2021-03-25
得票数 0
回答已采纳
4
回答
如果作为
参数
传递
的
函子不带
参数
,则启用模板
、
、
、
、
我试图为一个模板函数定义两个
重载
。如果作为
参数
传递
的
函子没有
参数
,则生成第一过载,否则生成第二过载。我开始像这样实现:
constexpr
size_t argumentCount(R (*f)(Types...)) return sizeof...(Types);typename
std
::
enab
浏览 0
提问于2019-08-14
得票数 3
回答已采纳
2
回答
如何让SFINAE与模板专门化一起
工作
?
、
、
、
、
我希望有几种不同
的
实现:对于T、vector<T>和vector<vector<T>>,其中T是内置类型或一些复杂
的
类。我想
使用
SFINAE来分离内置类型和类
的
实现,并限制一组允许
的
类型。以下代码
工作
正常,但我收到警告消息: 8:37: warning: inline function '
constexpr
bool isType() [with T =
std
::vector<int>]
浏览 16
提问于2019-06-04
得票数 2
2
回答
类成员函数返回类型
的
enable_if
、
我正在尝试一种基于类模板
参数
来专门化成员函数
的
方法,而不必在类上
使用
SFINAE (并且导致代码重复或创建另一个类)。由于两个模板
参数
不能是可选
的
,
参数
enable_if
在指导原则中是不允许
的
,所以我尝试了以下两种方法:struct sample {
constexpr
typename
std
::
enable_if
<b
浏览 4
提问于2019-02-16
得票数 5
回答已采纳
1
回答
只在模板类
的
特定专门化上声明成员函数
、
它
使用
额外
的
模板
参数
(
std
::ratio)来确保像Length这样
的
东西只能添加到Length中,或者Area是Length乘以Length。const &that) { return *this;}; 但有时我想要转换回一个简单
的
double,用于与其他东西
进行
接口
constexpr
double getValue() { retur
浏览 2
提问于2022-07-15
得票数 0
3
回答
如何为特定类型专门化模板类方法?
、
、
、
、
我有这样
的
密码: public:
std
::cout << "bar\n";}; public: void:如果T t是Bar或
浏览 0
提问于2019-07-19
得票数 6
回答已采纳
1
回答
在依赖于
参数
的
查找(或变通方法)之前,有什么方法可以使模板替换发生?
、
、
、
我想这个问题
的
基本前提是我尝试
使用
enable_if
和
参数
依赖查找(ADL),但我不确定这是否可能。我在上看到了 所以我想这是行不通
的
,但本着学习
的
精神,我想把这个问题提出来。::
enable_if
<
std
::is_same<T,
浏览 0
提问于2018-03-17
得票数 2
回答已采纳
1
回答
简化
的
元组实现
、
我在一个没有任何标准库
的
平台上
工作
,我试图实现一个“类似元组”
的
类型。以下是我尝试过
的
方法: return data; VATailType rest;我
浏览 0
提问于2013-07-04
得票数 4
回答已采纳
2
回答
为什么
enable_if
模板构造函数中
的
可选
参数
可以帮助编译器推断模板
参数
?
、
、
class C> //
std
::cout << "optional}{} 第一个构造函数按
预期
工作
。但是,第二个构造函数没有编译,我
浏览 20
提问于2022-05-06
得票数 8
回答已采纳
6
回答
C++11:整数类型
的
模板函数专门化
、
、
做这件事最好
的
方法是什么?我
的
意思是:void f(I i) ...编译器为整数类型选择第二个版本
浏览 0
提问于2012-08-22
得票数 41
回答已采纳
1
回答
替代失败
、
、
、
、
: T _denominator;为了让库变得灵活,我试着大量
使用
SFINAE来限制对操作符函数
的
调用,只对有理数,有理数积分和积分有理数,但是不管积分和基本
的
积分类型是什么,它都能
工作
。下面是operator+
的
函数声明,例如:
constexpr
rational<typename
std
::common_type
浏览 2
提问于2012-09-05
得票数 0
回答已采纳
1
回答
将枚举值与SFINAE结合
使用
、
、
我已经很熟悉SFINAE,以及如何
使用
它来启用基于传递类型
的
特定模板(通过
使用
std
::
enable_if
)。然而,我最近开始从事一个项目,我想做以下
工作
:在
使用
SFINAE时,基于提供
的
枚举值创建一个类专门化。现在,我知道基于枚举值
进行
专门化是可能
的
,因为我以前已经这样做过(如下所示):{ Two,} template <Specif
浏览 1
提问于2020-11-19
得票数 3
回答已采纳
1
回答
在现代C++中,如何在没有宏
的
情况下实现特定于系统
的
功能
、
、
、
、
C++
的
JetBrains ReSharper告诉我要替换如下内容 #ifdef _WIN32#else // Assuming Unix# define cls system("tput clear") #endif // _WIN32
使用
constexpr
模板函数。然而,我曾尝试通过
std
::enable_if_t<_WIN32>
使用
SFIN
浏览 17
提问于2020-01-14
得票数 2
回答已采纳
2
回答
如果模板类型也可以是字符串,如何将其转换为字符串?
、
、
、
我有课: template <typename val_t>
std
::vector<
std
::string
std
::string &id, val_t val, bool tg) override { if (tg) { str::move(str)); virt
浏览 2
提问于2019-01-21
得票数 4
回答已采纳
1
回答
如何为const和non类型
的
混合编写专门
的
变量模板
、
、
当类型是一堆
std
::vector<T>时,我需要专门化一个多样化
的
模板。vectors" } 问题是,当is_vector
的
参数
包含const而不是const向量
的
混合时,它
使用
的
是默认类而不是专门类。test.cpp:13:8: error:类模板
浏览 14
提问于2022-05-28
得票数 2
2
回答
使用
std
::
enable_if
重载
模板
的
隐式转换操作符T()无法编译
、
、
、
我正在用C++17编写一个类,我希望为浮点类型以及一些自定义类型编写
重载
转换操作符。这是一个可重复
的
例子。有更多
的
转换需要添加模板,但如果我能够解决这些,其余
的
应该是相似的。::enable_if_t<
std
::is_floating_point_v<T>, T>> return static_castexplicit operator T() const {
浏览 0
提问于2019-02-05
得票数 1
回答已采纳
2
回答
SFINAE是否依赖于类型推断?
、
、
、
我对中
的
以下引语感到困惑 template <typename T> inline
constexpr</e
浏览 0
提问于2018-10-04
得票数 3
回答已采纳
3
回答
使用
enable_if
的
部分模板函数专门化:使默认实现
、
、
、
使用
C++11
的
enable_if
,我想为一个函数(例如,基于
参数
的
类型)和默认实现定义几个专门
的
实现。定义它
的
正确方法是什么?下面的示例不像
预期
的
那样
工作
,因为“泛型”实现是被调用
的
,不管它
的
类型是T。: " << t <<
std
::endl; template<typename T, typename
浏览 0
提问于2017-06-16
得票数 22
回答已采纳
2
回答
这里发生了什么事?
int dim = 2;{}; inline void apply_kern(){} template<class
浏览 3
提问于2018-12-07
得票数 13
回答已采纳
2
回答
如何
使用
布尔模板
参数
启用成员函数?
、
、
我希望类有两个不同
的
push实现,并基于布尔模板
参数
进行
选择。我尝试
使用
中描述
的
SFINAE原理,如下所示:class Bar { typename
std
::
enable_if
<foo>::type
浏览 2
提问于2017-12-22
得票数 4
回答已采纳
点击加载更多
相关
资讯
C++20:核心语言
Modern C+元编程应用(二)
C+23 特性概览
机器人说明书---名词解释016课_C++语言_面向对象(4)
30天拿下Rust之命令行参数
热门
标签
更多标签
云服务器
ICP备案
腾讯会议
云直播
对象存储
活动推荐
运营活动
广告
关闭
领券