technique
Item-29 Strive for exception-safe code
· β˜• 8 min read

Exception-safe functions leak no resources and allow no data structures to become corrupted, even when exceptions are thrown. Such functions offer the basic, strong, and nothrow guarantees.


Item-27 Minimize_casting
· β˜• 7 min read

Avoid casts and develop a cast-free alternative whenever practical, especially dynamic_cast in performance-sensitive code.


Item-25 Consider support for a non-throwing swap
· β˜• 7 min read

When std::swap would be inefficient for your type,provide a non-throwing swap member function, a non-member swap calling the member, and possibly a specialized std::swap for the case of classes (not templates).