Any*_*orn 6 c++ type-traits c++11
确定类似-int()或double()*double()通过的结果的正确语法是什么result_of?
这失败了
std::result_of<operator-(int)>::type
std::result_of<operator*(double,double)>::type
Run Code Online (Sandbox Code Playgroud)
小智 8
std::result_of真的不是采取这里的方法.decltype不正是你想要什么,并可以作为decltype(-int()),decltype(double()*double())等等.如果你不知道,如果类型是缺省构造的,你也可以使用std::declval:decltype(-std::declval<int>()).
任何语法涉及的原因operator-都不起作用的原因是operator-语法仅适用于自定义重载运算符.内置运算符没有任何可以引用的支持功能.
| 归档时间: |
|
| 查看次数: |
588 次 |
| 最近记录: |