公众号
RSS https://github.com/wanghenshui/cppweeklynews/releases.atom
欢迎投稿,推荐或自荐文章/软件/资源等
本周内容不多,但是比较难理解
标准委员会动态/ide/编译器信息放在这里
编译器信息最新动态推荐关注hellogcc公众号 上周更新 2023-03-29 第195期
编译器信息最新动态推荐关注hellogcc公众号 本周更新 2023-04-05 第196期
Xmake v2.7.8 发布,改进包虚拟环境和构建速度 https://tboox.org/cn/2023/04/04/xmake-update-v2.7.8/
虚基类
struct A {
int a{};
};
struct B : virtual A {};
struct C : virtual A {};
struct D : B, C {};
int main() {
D d{};
d.a = {}; // without virtual -> request for member 'a' is ambiguous
}
介绍协程应用以及如何更好的封装成Lazy类
LTO/PGO 涨涨见识
了解一波fuzzer。据我了解应用的很少
感觉就是分层
gcc优化技术债,把iostream的依赖减小了
和Folly的Sync<T>
一个东西, 帮你把mutex和你的值装在一起,免得你自己调用lock unlock
使用
struct Thing {
MutexProtected<Field> field;
};
thing->field.with([&](Field& field) {
use(field);
});
代码 https://github.com/SerenityOS/serenity/blob/master/Kernel/Locking/MutexProtected.h
[uuid(a6107c25-4c22-4a12-8440-7eb8f5972e50)]
class Widget : public IWidget
{
/* ... */
};
这代码啥意思? MSVC方言
有异常不处理,遇到了会给你一种代码挂住了没执行的感觉,尤其是在协程内
winrt::IAsyncAction DoAwesomeThings()
{
co_await promise.initial_suspend();
try {
Step1();
printf("About to call Step2!\n");
Step2();
printf("Step2 returned!\n"); // never executes!
Step3();
} catch (...) {
promise.unhandled_exception();
}
co_await promise.final_suspend();
}
push_back 当你想把已有的临时对象放到你的vector或者想把已有的对象move到你的vector
emplace_back 当你想创建临时对象,放到你的vector,没必要创建个临时对象再push_back
asteria 一个脚本语言,可嵌入,长期找人,希望胖友们帮帮忙,也可以加群753302367和作者对线
感觉有点干够了这个活。有没有啥岗位推荐的
如果有疑问评论最好在上面链接到评论区里评论,这样方便搜索,微信公众号有点封闭/知乎吞评论