C++ 虐我千百遍
109 subscribers
31 photos
7 links
Download Telegram
Forwarded from Chenyao Lou
写了一个 optional<reference_wrapper<T>> ,然后感觉哪里不太对,然后改成了 T*
考虑这个场景:
{
T t;
do_something(t);
}

能否在 do_something(T&&) 是 well-formed 的情况下自动优化成 do_something(move(t)); ??
[](...){[](){[](){}();}();}([]{[]{}();},[](){});
在构造函数里面构造成员的时候如果用到了 lambda,除了 [&] 以外一定要注意有没有需要 = 的!!!for 循环里面有 lambda,要检查循环变量要不要 = capture!!!
有没有啥能够 format 长函数名的工具?一个函数名好几屏的已经不想活了(
草, template <SomeConcept<T> U> 等价于 template <typename U> requires SomeConcept<U, T> ,而不是 template <typename U> requires SomeConcept<T, U> ,一直记反了
发现 if consteval 进 C++23 了
C++23 好!(图为 std::optional
这一坨重载也太草了(
Forwarded from "Dicanoex"[::-1]
转自 std-proposals
C++ 虐我千百遍
转自 std-proposals
判断 T(args...) 是不是 constexpr,也就是判断 T 是否能以 args... 来 constexpr-constructible
C++ 虐我千百遍
Photo
该程序的行为?
Anonymous Poll
36%
输出两个 1
55%
CE
9%
UB
如果 vector 超过 8 个元素的时候出现神奇问题,可以检查下是不是移动构造写错了(
int final(int override) { return override * override;}
在已知 C++ 标准下都不会 CE(
函数返回一个 lambda 的时候一定要检查 capture 的东西对不对!!!