作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
如果我有一个模板类,像这样:
template<typename T>
class Type { /* ... */ };
在不以任何方式修改 Type
的情况下,是否有一种简单的方法可以针对 所有 匹配编译时条件的此类类型专门化它?例如,如果我想为所有整数类型专门化 Type
,我想做这样的事情(只有有效的事情,即):
template<typename T>
class Type<std::enable_if<std::is_integral<T>, T>::type> { /* ... */ };
最佳答案
这应该有效:
template<typename T, bool B = std::is_integral<T>::value>
class Type;
// doesn't have to be a specialization, although I think it's more clear this way
template<typename T>
class Type<T, false> { /* ... */ };
template<typename T>
class Type<T, true> { /* ... */ };
关于c++ - 满足条件的多种类型的模板类特化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8595157/
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 4 年前。
正如您在 this travis.yml 中看到的那样文件,我的代码依赖于一些第三方库,我在构建项目之前将它们安装在远程系统上。 Travis 每次推送提交时都会下载并构建这些库,这可以避免吗?我的意
我是一名优秀的程序员,十分优秀!