败犬日报 2025-01-16
1. 如何评价最快的json解析库yyjson? - 积石息土的回答 - 知乎
https://www.zhihu.com/question/426918418/answer/2169522309
2. constexpr 局部变量会在栈上分配空间吗
会。自动储存期一般来说是在栈上分配。
但是大多数情况会被优化掉,除非给变量取地址之类的操作。
3. 为什么不禁止给 constexpr 变量取地址
没办法禁止,如果 constexpr 变量的一个成员是一个数组,访问这个数组就需要地址。
4. 字面类型 (Literal Type)
cpp
class A {
public:
int x;
A(int x) : x(x) {}
};
template<A a>
void f() {}
int main() {
f<A{1}>();
}
这样会报错,因为 A 定义了非 constructor 构造函数,A 不再是字面类型。
可以删掉这个构造函数或者构造函数加上 constexpr。