rwo*_*ols 4 c++ c++11 c++14 c++17 c++20
正如标题所示:是否有可能确保在编译时最多调用一次constexpr函数?
如果功能不是constepxr,这显然是不可能的; 每当我按空格键时,我都可以编写一个被调用的函数,因此编译器永远无法在编译时解决这个问题.
Vit*_*meo 13
简答:不,因为constexpr功能无法读取/设置外部状态.(他们可以有内部状态,但他们仍然需要"纯粹").
constexpr
真实答案:可能是的,但这是一个坏主意.FilipRoséen发布了一系列博客文章,constexpr通过滥用friend船只和ADL来实现有状态功能:
friend
"C++中的非常量常量表达式" - (由Google缓存)
"如何在C++中实现常量表达式计数器" - (由Google缓存)
"如何在C++中实现兼容的META-CONTAINER" - (由Google缓存)
这项技术非常晦涩难懂.它被认为是由CWG的功能滥用,这是试图使它形成不良与问题#2118.
归档时间:
9 年,3 月 前
查看次数:
368 次
最近记录:
8 年,9 月 前