公众号
qq群 点击进入
RSS https://github.com/wanghenshui/cppweeklynews/releases.atom
欢迎投稿,推荐或自荐文章/软件/资源等,评论区留言
本期文章由 HNY 啃萝卜 赞助
标准委员会动态/ide/编译器信息放在这里
编译器信息最新动态推荐关注hellogcc公众号 本周更新 2024-04-03 第248期
clion 新版本发布 https://www.jetbrains.com/clion/whatsnew/#v20241-apr-09
Results summary: 2024 Annual C++ Developer Survey “Lite”
一年一度的调查问卷报告出了,样本有点少,说几个有意思的数据
感兴趣的可以自己看一下,大部分都是图
群里聊到小红书看到的一个move优化不生效的问题
https://quick-bench.com/q/P-nqRmfT4ChFdNHHd9NCFALRRDI
经过群里的压测比较,并没有明显差异
大家有其他见解也可以补充
省流:用std::size
c里有一种检查数组长度的方法 sizeof(a) / sizeof(a[0])
现在是2024年,有没有一种优雅的方法呢
显然你会说 用vector/array ,先别走这么远,先来个尝试
template <typename T, size_t N>
char (&ArraySizeHelper(T (&array)[N]))[N];
#define countof(array) (sizeof(ArraySizeHelper(array)))
看懂发生了什么吗,这个ArraySizeHelper是个函数模版,接受T(&)[N] 返回一个char(&)[N] 然后你就拿到了N
为什么不实现,我靠,你要是实现了玩意真有傻逼同事用咋办,就在sizeof里用用得了
多么扭曲的写法,想出这玩意的人排便通畅吗,就不怕被同事打吗
后来到了c++11 咱们终于现代了
template <typename T, size_t N>
constexpr size_t countof(T (&arr)[N]) noexcept
{
return N;
}
都支持数组,顺便给vector啥的也支持上
template <typename Cont>
constexpr auto countof(const Cont &cont) -> decltype(cont.size())
noexcept(noexcept(cont.size()))
{
return cont.size();
}
我操,是不是重新发明了std::size 哈哈c++17才支持
尽量用std::size
两个指针怎么办,可能你会说自己算被,用std::distance
上一期我们讲的范围问题还记得吗,转成range 拿range.size是最合理的,不要自己算,错误会被忽略掉
之前发过了,没看的再看看哈,这个思路还是挺清晰的
学学LLVM
module现状调查,哈哈,没有能用的大项目,没错,2020的东西到2024年也没做好
理解不了,有看懂的可以讲讲,我觉得有点为了秀而秀,没必要
TLDR 有两个地方有异常,但只catch一处
TODO 没看懂
看一乐
目前这个行业是非常好的方向,不亚于搜推广了。感兴趣的可以试试
这个是对于学生而言的
不过和水友群里聊了一下,安全方向就业大环境不太好,16-19可能是巅峰吧,现在你看玄武实验室都没啥动静了
基本人不离职就没有新坑了,以前能进大厂的人才现在只能去小厂
不过这个方向是有钱的,只不过更倾向于小而美了。感兴趣的可以试试。
本台记者 要求匿名/WhiteCrow报道,在此表示感谢
上周真是漫长的一周啊,真不想上六天班
水友群里有一个有个哥们说他的策划很漂亮实现她的需求都故意留几个bug
我闻到了恋爱的酸臭味了,我想起了之前喷哭测试的往事,一晃也五六年了
时间过的怎么又慢又快的,本周周报就到这里了