腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
2
回答
从
模板
参数
推导
基
类型
c++
、
templates
Visual Studio 2017,带有C++17的C++ 有没有办法使用
模板
参数
并
推导
出
基
类型
? 例如:如果
模板
参数
是std::string,我想在函数内部声明一个char。如果
模板
参数
为std::basic_string<unsigned char>,我想在函数内部声明一个unsigned char: #include <string> #include <vector>
浏览 11
提问于2019-11-27
得票数 1
回答已采纳
1
回答
C++
模板
类型
参数
的自动
推导
c++
、
templates
作为我的消息库的一部分,我使用这样的结构来发送消息(struct) tMsgVolumeChanged oMsg;oMsg.vSend<tMsgVolumeChanged>(); 使用
基
类( tMsgVolumeChanged和所有其他消息派生自该
基
类)中定义的vSend()方法作为 struct tMsgBase tMsgBase() {}{
浏览 24
提问于2021-08-19
得票数 0
回答已采纳
2
回答
导出
模板
定义的
基
类构造函数
参数
的
类型
。
c++
、
templates
、
sfinae
、
ctad
我有一个派生类Wrapper,它继承自
模板
定义的
基
类.我想配置Wrapper,以便如果
基
类有构造函数
参数
,Wrapper的构造函数还包括
基
类的构造函数
参数
,以便它可以将它们转发给
基
类构造函数: candidate expects 1 argument, 2 provided 是否有可能迫使编译器根据Args的
推导
值和构造时提供给Wrapper的
参数
,
推导
浏览 12
提问于2022-11-22
得票数 0
回答已采纳
1
回答
为什么Clang更喜欢主
模板
而不是C++17的专门化?
c++
、
templates
、
language-lawyer
、
template-specialization
在所有版本的Clang中,但仅从C++17开始,在实例化s时选择主
模板
。我认为值得注意的一点是,如果实例化在<int, nullptr>上,即第一个
参数
不再是int const,则永远不会选择主
参数
。此外,如果第二个
参数
中的函数指针的签名不包含T作为
参数
,即如果第二个
参数
是T (*)()或void (*)(),则不会选择主
参数
。 如果这段代码不是IFNDR,哪个编译器是正确的?
浏览 1
提问于2021-03-22
得票数 11
回答已采纳
1
回答
实验性的make_array,我可以使用花括号初始化列表作为
参数
吗?
c++
、
arrays
、
variadic-templates
、
c++17
int, float>; 这里的问题似乎是,即使make_array显式地指定了第一个
模板
参数
,
参数
仍然来自
参数
包,这与显式指定的
参数
无关。
浏览 14
提问于2016-08-19
得票数 1
回答已采纳
2
回答
这段C++ CRTP代码应该编译吗?如果是,它应该怎么做?
c++
、
templates
、
inheritance
、
overloading
、
crtp
我在考虑使用CRTP类来帮助处理重载,并且想知道下面的代码会做什么:#include <typeinfo> class FunctionImplementation}; {{ class DerivedF
浏览 0
提问于2013-02-20
得票数 1
回答已采纳
1
回答
当部分专门化的
参数
不使用其任何
模板
参数
时,适用哪些规则?
c++
、
templates
、
language-lawyer
、
partial-specialization
n4567 temp.class.spec.matchp2
模板
参数
可以在几种不同的上下文中
推导
,但在每种情况下,都
浏览 1
提问于2016-01-11
得票数 3
回答已采纳
1
回答
电话
类型
演绎语境中“推断A”的意义
c++
、
language-lawyer
这句话描述了如果函数
模板
参数
是
从
“
推导
的A”派生出来的,那么它仍然是有效的,但是,对于“
推导
A”实际上是什么还没有确切的定义。我的理论是,
推导
出的A是原始的P,
从
A中替换
模板
参数
,但这会打破
类型
演绎规则,试图找到
模板
参数
使A和A完全相同,因为在A是非引用,
推导
A是引用的情况下。
浏览 0
提问于2019-04-07
得票数 1
回答已采纳
2
回答
无
参数
模板
参数
的自动检测
c++
、
c++11
int>; std::cout << f3.data << std::endl;直到昨天,我才知道编译器可以在没有
参数
的情况下推断函数
模板
的
类型
参数
我的问题是:在C++03/C++11标准中,我们可以为编译器的自动
类型
检测逻辑找到必要的支持文档吗?
浏览 1
提问于2014-06-24
得票数 4
回答已采纳
1
回答
重载
模板
方法未按预期解析
c++
、
templates
我有以下代码:#include <type_traits> }; {{ Logger& operator<< (T& value) return *this << const_ca
浏览 2
提问于2014-11-05
得票数 3
回答已采纳
1
回答
当template<typename、value...>
c++
、
templates
、
c++11
、
metaprogramming
return 0;默认情况下会生成(带GCC 4.7.1):Version B当传递的
类型
是具有良好形状的
模板
时,如何强制使用Version C (我可以添加新版本的f,我可以添加std::enable_if或其他C++11
类型
特征语法,但如果可能的话,我希望避免添加助手类)?注意:这个技巧应该适用于每个整数
类型
的TN…
浏览 1
提问于2012-12-17
得票数 3
回答已采纳
1
回答
“
从
主
模板
的
参数
中
推导
出专门化的
模板
参数
”意味着什么?
c++
、
templates
、
language-lawyer
N4567 14.5.5.1 temp.class.spec.matchp4 在引用类
模板
专门化的
类型
名称中,
参数
列表应与主
模板
的
模板
参数
列表匹配。专门化的
模板
参数
是
从
主
模板
的
参数
.中
推导
出来的。
模板
参数
可以在几种不同的上下文中
推导
,但在每种情况下,都会将以
模板
参数
指定的
类型
浏览 2
提问于2015-12-31
得票数 2
回答已采纳
1
回答
为SFINAE测试人员提供默认值为零的原因是什么?
c++
、
templates
、
c++11
、
sfinae
、
libc++
我记得在某个地方听说它是一种优化(在实例化
模板
时加快编译器的速度),但我不完全理解它是如何工作的。我查看了该标准,其中有一节简要描述了与
模板
参数
推导
有关的默认
参数
发生了什么。14.8.2 在
模板
参数
推导
过程中的某些点,需要采用使用
模板
参数
的函数
类型
,并将这些
模板
参数
替换为相应的
模板
参数
。当任何显式指定的
模板
<
浏览 4
提问于2014-10-18
得票数 18
2
回答
如何替代扣减可以产生多个可能的“
推导
A"?
c++
、
language-lawyer
、
template-argument-deduction
每 这些替代方案()只有在
类型
扣减失败时才会考虑。如果产生多个可能
推导
的A,则
类型
推导
失败。注意:如果在函数
模板
的任何函数
参数
中没有使用
模板
参数
,或者仅在非
推导
的上下文中使用,则不能从函数调用中
推导
出相应的
模板
参数
,而且必须显式指定
模板
参数
。
浏览 6
提问于2022-08-13
得票数 1
回答已采纳
2
回答
当
参数
不同时,重载解析不会选择
模板
c++
、
c++11
为什么f的第三次函数调用没有使用函数
模板
?
浏览 0
提问于2019-04-28
得票数 2
2
回答
是否允许在函数
模板
的显式专门化中演绎多个
模板
参数
?
c++
、
language-lawyer
、
template-specialization
、
template-argument-deduction
、
function-templates
以下是的引文 如果后者是真的,为什么这个句子不按下面的形式形成呢?可以在
模板
id中不指定template-arguments尾随,该
模板
命
浏览 0
提问于2019-06-26
得票数 2
回答已采纳
1
回答
如何在本例中执行
模板
参数
演绎?
c++
、
language-lawyer
、
template-argument-deduction
PRETTY_FUNCTION__; }; f(std::move(cptr));每 如果P是cv限定
类型
,则
浏览 4
提问于2022-08-16
得票数 1
回答已采纳
1
回答
非
类型
参数
的非
推导
上下文
c++
、
c++11
、
c++14
、
c++17
、
variadic-templates
我正在阅读C++
模板
(第二版),这是本书的一个片段:void f(double (&)[N+1], Ts... ps) {return;}func(1); 为什么我指定的
模板
参数
显式地与提供的
参数
不匹配?
浏览 0
提问于2018-12-15
得票数 13
回答已采纳
2
回答
在C++中添加双数和复数
c++
cout << z2 - 1.0 << "\n"; // must change to z2 - 1 to compile这会产生编译错误,因为在表达式z1 - 1或z2 - 1.0中找不到任何
类型
的另一方面,更改这些表达式以使基本
类型
匹配正常。天真地说,对于z1 - 1,我希望int 1被提升为double,并期望z2 - 1.0中的带有基本
类型
int的z2被提升为complex<double>。到底怎么回事?
浏览 4
提问于2015-06-05
得票数 7
回答已采纳
2
回答
相关
模板
类之间函数
参数
的自动转换
c++
、
templates
、
c++11
、
type-conversion
假设我有一对相关的
模板
,并且我想要自动地将
参数
从一个转换到另一个函数。我怎样才能做到这一点?template argument deduction/substitution failed: ‘foo<1, 2>’ is not derived from ‘bar<a>’ 目的是通过我控制的代码将f的第二个
参数
从
但是很明显,
模板
转换构造函数和非
模板
转换操作符都不适用于这种情况。有什么成语我可以用吗?
浏览 0
提问于2014-07-29
得票数 0
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
C+11支持函数模板的默认模板参数
C+auto类型推导完全攻略
聊聊C+的模板和泛型编程
请问C+11有哪些新特性?
C+decltype类型推导完全攻略
热门
标签
更多标签
云服务器
即时通信 IM
ICP备案
对象存储
实时音视频
活动推荐
运营活动
广告
关闭
领券