Book reviews: A C++ reading list

19.12.2005
The C++ development language has been used for years, but some of its best secrets are still buried, waiting to be discovered and implemented. These four books offer varying approaches to C++, from a beginner's guidebook to more advanced books that teach developers how to better exploit the power, flexibility and security that lurks beneath the surface of C++.

Secure Coding in C and C++Secure Coding in C and C++, by Robert C. Seacord, Addison-Wesley, 2006, $39.99, 341 pages. This guide to writing more-secure code focuses on preventing fundamental programming errors that can lead to the most common and dangerous security vulnerabilities in C and C++ code. The book is filled with real-world examples, including detailed steps for preventing the buffer overflows and hacker attacks that are possible through the incorrect use of dynamic memory management functions. It also features sections on notable security vulnerabilities and their mitigation strategies, as well as information on practices that could help you improve your code writing.

Beyond the C++ Standard Library: An Introduction to BoostBeyond the C++ Standard Library: An Introduction to Boost, by Bjorn Karlsson, Addison-Wesley, 2005, $49.99, 388 pages. This guide to the 58 Boost libraries that have been created to extend development capabilities for C++ developers provides extremely detailed descriptions about the 12 Boost libraries that are most useful. The book covers a wide range of subjects, including numeric libraries, smart pointers, a preprocessor library and more. The sections on each of the featured libraries include details on how the libraries can be used to improve code and how to avoid common problems. While the book glosses over the other 46 Boost libraries with little more than brief descriptions, it breaks down the 12 most important ones into their essential elements to help you take advantage of the power of Boost.

Effective C++ Third Edition: 55 Specific Ways to Improve Your Programs and DesignsEffective C++ Third Edition: 55 Specific Ways to Improve Your Programs and Designs, by Scott Meyers, Addison-Wesley, 2005, $44.99, 297 pages. This C++ guide offers insights into using C++ code effectively to create efficient, portable and maintainable code for your software development projects. It includes 55 ultradetailed suggestions for established developers for improving programs written in C++ -- it's not a guide to getting started from the ground up in the language. Included are clear descriptions as well as examples and points to remember as you produce your code. Chapter topics include help with designs and declarations, inheritance and object-oriented design, generic programming, and implementations and templates.

C++ Without FearC++ Without Fear, by Brian Overland, Prentice Hall, 2004, $24.99, 486 pages. This helpful guide starts with the basics, like programming how-to's and writing your first C++ programs, and it's filled with clear illustrations and step-by-step examples. It's a good book for beginners or nondevelopers who may want to know more about what's under the hood of software, but it could also help IT veterans who want to relearn some of the basics. The book is presented in an easy-to-navigate format that allows the reader to quickly find topics of interest.