Effective C++: 50 Specific Ways to Improve Your Programs and Designs (Addison-Wesley Professional Computing Series) Subsequent Edition
Use the Amazon App to scan ISBNs and compare prices.
There is a newer edition of this item:
The book opens with some hints for porting code from C to C++ and then moves on to the proper use of the new and delete operators in C++ for more robust memory management. The text then proceeds to class design, including the proper use of constructors, destructors, and overloaded operator functions for assignment within classes. (These guidelines ensure that you will create custom C++ classes that are fully functional data types, which can be copied and assigned just like built-in C++ classes.)
The author also provides a handful of suggestions for general class design, including strategies for using different types of inheritance and encapsulation. Never doctrinaire and always intelligent, these guidelines can make your C++ classes more robust and easier to maintain. --Richard Dragan
Effective C++ CD is the HTML (Netscape-oriented) version of Scott Meyers' previous two works, Effective C++, Second Edition and More Effective C++. Additionally, five supplementary magazine articles appear in the collection. There are also links to relevant material on the Web which that been added to the current edition and which did not appear in the print edition.
Scott Meyers' work is so well known as scarcely to need introduction. Respect for his C++ acumen and pedagogic skills is so widespread that I was prepared to thoroughly detest his work, which I have encountered often but barely deigned to read to date.
On close examination, I find Meyers' books to be superb.
Of the 50 catechismic "Items" in the body of Effective C++, the vast majority are of critical importance to solid C++ programming. Virtually everything Scott Meyers suggests on these subjects is germane and practical. Where one could conceivably differ with Meyers' approach, his is nevertheless an entirely sound approach.
The second volume, More Effective C++, is cast in the same mold as the first volume. Here the discussion of 35 further "Items" tends to devolve somewhat towards matters of style. However, these are still critical issues being raised that the intermediate C++ programmer must confront sooner or later, athey are shipped too early. They fail because they arenthey are shipped too early. They fail because they arens presented in Meyers' rich and sympathetic tutorial prose. --Jack Woehr, Dr. Dobb's Journal -- Dr. Dobb's Journal
- Publisher : Addison-Wesley; Subsequent edition (September 1, 1997)
- Language : English
- Paperback : 256 pages
- ISBN-10 : 0201924889
- ISBN-13 : 978-0201924886
- Item Weight : 15.7 ounces
- Dimensions : 7.75 x 0.5 x 9.5 inches
- Best Sellers Rank: #1,500,174 in Books (See Top 100 in Books)
- Customer Reviews:
About the author
Top reviews from the United States
There was a problem filtering reviews right now. Please try again later.
Scott's easy-going writing style makes the explanations easy to read and digest. Unlike other books I've read, Scott provides detailed explanations allowing you to really understand the topic at hand. The 50 items are self-contained chunks of information, each thoroughly covering a specific topic.
C++ developers working for me are required to read this book (and Scott's companion, "More Effective C++") before I let them write a line of production code.
Many C++ books span 500 pages or more. Granted, there are many tutorial books that need to cover the basics, and then (hundreds of pages later) cover subjects for a non-neophyte. This book is reasonably short (about 225 pages), but full of ideas for the intermediate programmer.
This is one of the few technical books you can read from cover to cover. Many are good for references, but aren't accessible. This is both.
Some items need to be updated, however. For example, Item 28, "Use structs to partition the global namespace", you can use namespace now (it is also mentioned at the bottom of the page).
I think the items can be better organized, for example Item 23 "Don't try to return a reference when you must return an object" and item 31 "Never return a reference to a local object or a dereferenced pointer initialized by new within the function" can be combined to one, in item 23, "object" means a local object, it is better to say it explicitely. Also similar items are better to put closer, maybe it is difficult, since many items relate to each other.
This is a book for intermediary level, it lacks some more advanced issues as exception, namespace, etc. Exceptions are discussed in its following book <<More effective C++>>, however, I would like to mention the discussion in <<more effective C++>> is not complete neither, up to now, I can find the most advanced discussions about exception in <<Exceptional C++>> by Herb Sutter, which is the book a advanced programmer should read. Discussion about namespace can also be found in this book.
Overall, I think <<Effective C++>> is a good book for a serious programmer to start his/her c++ career, he/she can read <<More effective C++>> and <<Exceptional C++>> (maybe also <<Advanced C++ styles and idioms>> and <<C++ for real programmers>>) for more advanced topics/discussions, and <<C++ faq>> for a complete review of C++.
I regret not being able to find a book for comparison of C++ and java, two most used programming languages. These two languages are similar in syntax, but have different features. For example, auto_ptr exists only for C++ and delegation exists only for java, The differences of languages affect the design and implementation, <<Design patterns>> discussed the design patterns with C++ and Smalltalk, however, Java is more popular than Smalltalk now and I hope to find a book which discusses the C++ and Java together. A more complete discussion of C++ advanced features is also needed, Herb Sutter is working on this.
Top reviews from other countries
The book is structured in such a way that you don't have to read it heads to tail, you can simply start with a topic that you are interested in.
Weather you have a lot of experience in c++ or you are just picking it up, you will find this book enlightening.
I would definitely recommend it.