c – SFINAE:static_assert vs std :: enable_if
发布时间:2020-12-16 03:15:18 所属栏目:百科 来源:网络整理
导读:在以下(建议!)语法中有什么缺点吗? template typename T void f() static_assert(std::is_same T,int ::value){ ; } 而不是SFINAE(看起来像拐杖): template typename T,typename = typename std::enable_if std::is_same T,int ::value ::type void f() {
在以下(建议!)语法中有什么缺点吗?
template< typename T > void f() static_assert(std::is_same< T,int >::value) { ; } 而不是SFINAE(看起来像拐杖): template< typename T,typename = typename std::enable_if< std::is_same< T,int >::value >::type > void f() { ; } 甚至更糟: template< typename T > typename std::enable_if< std::is_same< T,int >::value >::type f() { ; } 禁止使用自动扣除结果类型. 解决方法
为什么使用static_assert比
Concepts Lite语法更好?
template< typename T > void f() requires Int<T>() { } 要么: template< Int T > void f() { } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Ajax缓存解决办法
- C:拆分一个字符串并选择最后一个元素[复制]
- Flash务实主义(六)——Loading
- actionscript-3 – SoundTransform平移不使用ActionScript
- 嵌套 – 如何在swift 2.0中处理连续的多次尝试
- c# – 使用Try / Catch检查文件是否存在
- cocos2d-x 2.2 利用python脚本在目录Classes内创建class
- ruby-on-rails – pgbackups:transfer不是一个heroku命令
- ruby-on-rails – rake:测试没有在子目录中运行自定义测试
- 【转】cocos2d-x 的缺点有那些??