- Paperback: 240 pages
- Publisher: Addison-Wesley Professional; 1 edition (November 4, 2004)
- Language: English
- ISBN-10: 9780321113580
- ISBN-13: 978-0321113580
- ASIN: 0321113586
- Product Dimensions: 7.3 x 0.6 x 9.1 inches
- Shipping Weight: 1.1 pounds (View shipping rates and policies)
- Average Customer Review: 44 customer reviews
- Amazon Best Sellers Rank: #146,759 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
C++ Coding Standards: 101 Rules, Guidelines, and Best Practices 1st Edition
Use the Amazon App to scan ISBNs and compare prices.
Frequently bought together
Customers who bought this item also bought
From the Back Cover
Consistent, high-quality coding standards improve software quality, reduce time-to-market, promote teamwork, eliminate time wasted on inconsequential matters, and simplify maintenance. Now, two of the world's most respected C++ experts distill the rich collective experience of the global C++ community into a set of coding standards that every developer and development team can understand and use as a basis for their own coding standards.
The authors cover virtually every facet of C++ programming: design and coding style, functions, operators, class design, inheritance, construction/destruction, copying, assignment, namespaces, modules, templates, genericity, exceptions, STL containers and algorithms, and more. Each standard is described concisely, with practical examples. From type definition to error handling, this book presents C++ best practices, including some that have only recently been identified and standardized-techniques you may not know even if you've used C++ for years. Along the way, you'll find answers to questions like What's worth standardizing--and what isn't? What are the best ways to code for scalability?What are the elements of a rational error handling policy? How (and why) do you avoid unnecessary initialization, cyclic, and definitional dependencies?When (and how) should you use static and dynamic polymorphism together?How do you practice "safe" overriding?When should you provide a no-fail swap? Why and how should you prevent exceptions from propagating across module boundaries?Why shouldn't you write namespace declarations or directives in a header file?Why should you use STL vector and string instead of arrays?How do you choose the right STL search or sort algorithm?What rules should you follow to ensure type-safe code?
Whether you're working alone or with others, "C++ Coding Standards" will help you write cleaner code--and write it faster, with fewer hassles and less frustration.
About the Author
Herb Sutter is the author of three highly acclaimed books, Exceptional C++ Style, Exceptional C++, and More Exceptional C++ (Addison-Wesley). He chairs the ISO C++ standards committee, and is contributing editor and columnist for C/C++ Users Journal. As a software architect for Microsoft, Sutter leads the design of C++ language extensions for .NET programming.
Andrei Alexandrescu is the author of the award-winning book Modern C++ Design (Addison-Wesley, 2001) and is a columnist for C/C++ Users Journal.
Top customer reviews
101 rules, mostly described in one or 2 pages make it a good reading before fall asleep, a good reminder of best practices that should not be forgotten. In these times, where code reviews are part of our daily activity, being aligned and focused makes the job more easy.
For novice it's for sure a good set of best-practices to be learned. For intermediate-expert it provides a clean and well focused reasoning on every single rule, good for tutoring and nice nuts of knowledge.
A must have.
The only reason I did not give it 5 stars is that now and then the language is just too clunky. In particular, I had to read "...the name lookup for that operator function might reach out into the name space...Whether it reaches out into N..." a few times before I understood that "reaching out into" is meant to be a synonym for "reach into".
On the whole, however, the book is quite readable, and the code examples hit the sweet spot of demonstrating the topic of discussion without being overly long.
It is easy to appreciate the authors' collective expertise and listen intently to the common sense and lessons learned through their experiences--all nicely wrapped up in this convenient package.
Inside are numerous quotations (proverbs?) that speak to the common sense of this book, such as: "If you have a procedure with ten parameters, you probably missed some."
In some ways, one may think that this book competes with Meyers' "Effective" series. While there certainly is some overlap, in a world plagued with bad code and bad coding standards and practices, one can argue that there can not be enough emphasis on raising the bar.
This book clearly puts forth a bar and explains the why's and why not's of its placement. I encourage every C++ programmer to buy and read this book cover-to-cover.