- 博客(7)
- 收藏
- 关注
原创 C++ 线程池
避免虚假唤醒问题(predicate 再次检查)。释放锁后再执行task():避免在任务执行期间持锁,提升并发性。enqueue中检查stop保证析构后不再接受任务。使用把异常传递给future:如果用户任务抛出异常,这个异常被捕获并保存到future的共享状态中,调用时会重新抛出,可以在主线程捕获。使用:解决非拷贝性,使 lambda 可拷贝进入。(也可用 C++14/17 的 move-capture 技巧避免shared_ptr,见下面改进)
2025-08-12 09:05:25
822
原创 友元的作用与意义
友元类型语法示例访问权限用途友元函数允许该函数访问类的私有成员重载运算符、辅助函数友元类该类的所有成员都可访问类间密切协作友元成员函数只允许指定成员函数访问细粒度控制访问某个普通函数某个类的特定成员函数或者某个类的全部成员函数去访问你类里的私有(private)和保护(protected)成员。
2025-08-07 16:07:53
237
原创 强类型枚举
目的强类型枚举的作用提高类型安全枚举值不能隐式转为整型或混用避免命名冲突枚举值必须带作用域前缀(如Color::Red更好地支持底层类型控制可指定底层类型如uint8_tint32_t等与类、命名空间更兼容可作为类成员、结构体字段,清晰不冲突。
2025-08-07 15:12:58
309
原创 移动语义与右值引用
项目说明问题拷贝大对象太慢解决方式C++11 引入右值引用(T&&作用能写移动构造函数 / 移动赋值运算符好处性能更好,无需重复分配和复制资源关键条件右值引用只能绑定右值(临时对象),所以能放心“偷”如你愿意,我可以用一个完整的例子演示如何写一个带移动构造函数的类,观察它在移动和拷贝之间性能的差异。是否继续?
2025-08-07 11:24:32
291
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅