用模板进行C ++懒惰评估
这个问题在这里已经有了答案:
if(is_recursable<A>::value == 1)
/* printf("1 %s", typeid(B).name()); */
lhs.printrec();
else
printf("0");
直到constexpr if
存在,你不能这样做。 原因在于,编译器必须假设即使两个分支都不可达,两个分支都是可能的 - 好像它应该能够说明的一样,但是它不被语言所允许。 你需要使用标签调度或其他编译时构造。
看到这个答案
链接地址: http://www.djcxy.com/p/86331.html