Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
据我了解,constexpr与模板元编程不同,图灵不完整,所以我相信这些是不一样的。所以问题是模板元编程在多大程度上constexpr过时了?
constexpr
constexpr绝对是图灵完备的。允许递归。它是一种方便的方法来定义在编译时和运行时工作的函数。constexpr但是,函数只是函数,不能对类型执行操作。(当然,除非您使用模板元编程来定义所述功能。)
两个类模板constexpr都可以用来包含编译时常量表达式,但相似之处就结束了。它们不是多余的,TMP 不会很快消失。
不过,一些特别难看的编译时计算可能会更优雅地重写为适当的函数。