![]() |
1
1
正如你在问题中所说的,SFINAE只发生在“即时上下文”中,“扣除失败”所包含的情况列在下面 [temp.deduct] . 代码中发生的错误将是格式错误,标准中提到了这一点:
因此,当需要为类型实例化函数模板f时,您的程序将是格式错误的
解决方案:
|
![]() |
2
0
在C++中,必须将约束放在函数本身上,以便检测工作: Demo (C++ 20)
回想一下C++的工作原理 类型 |
![]() |
Robert E. Brown · 嵌套类的嵌套类的访问权限 6 年前 |
![]() |
YSC · 通过成员指针访问受保护的成员:这是黑客行为吗? 6 年前 |
![]() |
Swift - Friday Pie · 交换数学运算的阶 6 年前 |
![]() |
Acorn · Linux内核的\uu is\u constexpr宏 6 年前 |
![]() |
Acorn · 检测宏中的整数常量表达式 6 年前 |
![]() |
Petr Skocik · 兼容类型并忽略C类型系统中的顶级限定符 6 年前 |