网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
成为超级会员,使用一键签到
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
02月23日
漏签
0
天
c++吧
关注:
601,068
贴子:
2,107,253
看贴
图片
吧主推荐
游戏
33
回复贴,共
1
页
<<返回c++吧
>0< 加载中...
c++自动类型推导的问题
只看楼主
收藏
回复
无名氏wyw1
|
7
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
RT,decltype<(true?a:b)>是什么原理?
俄文40全心全意
,
1
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
最好看个实例,这个很好理解的
唔唔啊啊啊啊
,
1
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
就是true?a:b的返回值的类型。但是没什么用,需要T1支持转为T2类型,或者T2类型支持转为T1类型
正义哒伙伴
,
1
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
一如模板深似海
Conzxy
||
5
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
啊这,语言机制太底层了
才不是惠痴ₔ
&&
6
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
我记得,三目运算返回的要是能互相转化的吧。
rainxy2000
,
1
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
记住模板是针对编译器编程(图灵完备),在编译期执行decltype<(true?a:b)>,得到b的类型
幻の上帝
->*
15
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
静态类型语言允许表达式的类型直接通过子表达式的值推断,不需要关心表达式的其它属性。这其实是针对表达式静态类型这种元数据的一种部分求值(partial evaluation) 。(C++ 中,静态类型的元数据包括值类别。)常量表达式求值可以是更完备的针对表达式值的部分求值,但仍然不违反其它规则,就算可以静态确定 ? : 的一个子表达式决定结果,也会继续转换到符合类型规则确定的表达式的值才得到结果——一般情形就是这样,不过在此无关紧要。因为 decltype 只关心其中操作数的类型和值类别,而不关心具体的值(也根本没法关心,因为是未求值操作数(unevaluated operand) )。而因为 ? : 的结果类型(有一大坨规则懒得引用了)不管 ? 前的子表达式,这里 ? 前的操作数只要不 ill-formed 能 conditionally converted to bool ,是什么都对决定结果的类型无关紧要。用 true 无非是保证不出错的前提下比较省事罢了。
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示