Item25–考虑写出一个不抛异常的 swap 函数
1. 核心现状:默认的 std::swap 够用吗? 绝大多数情况:够用(Rule of Zero) 如果你的 … 阅读更多
1. 核心现状:默认的 std::swap 够用吗? 绝大多数情况:够用(Rule of Zero) 如果你的 … 阅读更多
1. 核心场景:混合算术运算 为了讲解这个条款,我们依然使用经典的 有理数类 (Rational),并希望支持 … 阅读更多
1. 直觉 vs. 现实 我们的直觉(通常是错的) 在面向对象设计中,我们习惯把数据和操作数据的函数打包在一起 … 阅读更多
1. 语法一致性 (Syntactic Consistency) 这是最浅层的理由,但对使用者体验很重要。 如 … 阅读更多
1. 核心矛盾:我们为什么想返回引用? 学习了 Item 20 后,你可能觉得:“传值(pass-by-val … 阅读更多
1. 性能代价:为什么要避免 Pass-by-Value? 在 C++ 中,默认情况下函数参数是按值传递(pa … 阅读更多
🏗️ 条款 19:设计 class 犹如设计 type (Treat class design as type … 阅读更多
🎯 条款 18:让接口容易被正确使用,不易被误用 (Make interfaces easy to use c … 阅读更多
💡 条款 17:以独立语句将 new 到的对象置入智能指针 (Store newed objects in s … 阅读更多