1. 首页
  2. 编程语言
  3. C
  4. C++11模板元编程-std::enable_if示例详解

C++11模板元编程-std::enable_if示例详解

上传者: 2021-09-17 20:56:32上传 PDF文件 57.13 KB 热度 16次

C++11中引入了std::enable_if函数,函数原型如下:可能的函数实现:由上可知,只有当第一个模板参数为true时,enable_if会包含一个type=T的公有成员,否则没有该公有成员。如下代码所示,通过对返回值使用std::enable_if和在模板参数中使用std::enable_if均实现了只允许整形参数调用函数的功能。当使用float类型参数调用函数时,程序会报错:。如下所示,我们可以实现一个检测变量是否为智能指针的实现:程序输出:

用户评论
码姐姐匿名网友 2019-09-09 18:01:46

不怎么好用,但还是要多谢作者