It’s even better when what the coding standard requires is actually consistent, reasonable, and correct. Construction, Destruction, and Copying. Public inheritance is substitutability. Never write external include guards. Ignore it at your peril!

sutter and alexandrescu c++ coding standards

Uploader: Moogugore
Date Added: 6 December 2012
File Size: 19.53 Mb
Operating Systems: Windows NT/2000/XP/2003/2003/7/8/10 MacOS 10/X
Downloads: 77678
Price: Free* [*Free Regsitration Required]

Consider Clone instead of copying in base classes. Compile cleanly at high warning levels. Both authors draw on their personal extensive real-world c++ experience at commercial software companies ranging in size from small successful start-ups to RealNetworks to Microsoft.

When and how should you use static and dynamic polymorphism together?

C++ Coding Standards: Rules, Guidelines, and Best Practices by Herb Sutter

Avoid inheriting from classes that were not designed to be base classes. Don’t write code that depends on the order of evaluation of functionarguments.

Distinguish alexabdrescu errors and non-errors. If you’re interested in creating a cost-saving package for your students, contact your Pearson rep. Prefer calling the prefix forms.


But this book is something more: Refresh and try again.

Until now, this body of knowledge has been available only as folklore or spread in bits and pieces throughout books. One big flaw is that, particularly for the subtle cases, they don’t go into enough detail — they explain that something is bad, maybe even give an example, but not enough to really understand The intricacies of why.

Take parameters appropriately by value, smart pointer, or reference. Alexandrezcu, not to reuse, but to be reused.

Don’t use invalid objects. The information was presented in semi-list form with only a page or two to explain each point. Consider overloading to avoid implicit type conversions. To see what your friends thought of this book, please sign up.

sutter and alexandrescu c++ coding standards

Students, buy or rent this eText. Declare variables as locally as possible. Nice rationale behind the guidelines and practices pointed out on this book. Marvin rated it really liked it Mar 17, Don’t use unions to reinterpret representation. This was a 3-star book based on writing style that got a boost to 4 due to the quality and usefulness of the information it contained. Helpful, concise and to the point but by now i. Don’t optimize prematurely, don’t write list. Write function objects correctly.


Totally worth all the time spent on it. Always write internal include guards.

Ing.Alessandro Tasora

Aug 29, Suttwr rated it really liked it. Hoare on Testing October When should you provide a no-fail swap? Use sufficiently portable types in a module’s interface.

sutter and alexandrescu c++ coding standards

Prefer the canonical forms of arithmetic and assignment operators. Why and how should you prevent exceptions from propagating across module boundaries?