- Buy this product and stream 90 days of Amazon Music Unlimited for free. E-mail after purchase. Conditions apply. Learn more
Effective STL: 50 Specific Ways to Improve Your Use of the Standard Template Library: 50 Specific Ways to Improve the Use of the Standard Template Library (Professional Computing) Paperback – 6 Jun 2001
|New from||Used from|
- Choose from over 13,000 locations across the UK
- Prime members get unlimited deliveries at no additional cost
- Find your preferred location and add it to your address book
- Dispatch to this address when you check out
Special offers and product promotions
Frequently bought together
Customers who viewed this item also viewed
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.
Would you like to tell us about a lower price?
If you are a seller for this product, would you like to suggest updates through seller support?
Written for the intermediate or advanced C++ programmer, renowned C++ expert Scott Meyers provides essential techniques for getting more out of the Standard Template Library in Effective STL, a tutorial for doing more with this powerful library.
STL is a hugely powerful feature of today's C++, but one with a well-earned reputation for complexity. The book is organised into 50 tips that explore different areas of the STL. Besides providing a list of dos and don'ts, Meyers presents a lot of background on what works and what doesn't with STL. Each tip is demonstrated with in-depth coding samples, many of which make use of two-colour printing to highlight the most important lines of code. (Advanced developers will enjoy Meyers' in-depth explanations, while those who are in a hurry can skip ahead to the recommended tip itself.)
A good part of this book involves using containers, like vectors and maps, which are built into STL. (Besides the standard built-in containers, the author also highlights recent additions to STL like b-trees, which are available as extensions from other vendors.) You'll learn the best ways to allocate, add, change and delete items inside containers, including associative containers like maps. You'll also learn to avoid common pitfalls for writing code that is slow or just plain wrong.
Other areas covered in Effective STL include getting the most out of the 100-plus STL algorithms that are bundled with this library. Meyers shows you how to choose the correct algorithm for sorting, and other functions. (Even advanced developers will learn something here.) Sections on using function objects (called functors) round out the text. Meyers shows you when these classes make sense and the best ways to implement them. Besides specific tips, you'll get plenty of general programming advice. A useful appendix shows the limitations of STL as implemented in Microsoft Visual C++ 6.0 and how to overcome them.
Overall, Effective STL is a really invaluable source of programming expertise on an essential aspect of today's C++ for anyone who is using--or planning to use--STL in real production code. It is quite simply a must-have. --Richard Dragan
- introduction to advanced Standard Template Library (STL) programming techniques
- 50 tips and best practices for STL illustrated with sample tutorial code
- choosing containers
- efficient copying of elements inside containers
- removing, erasing and cleaning up items from containers
- using custom allocators with STL containers
- thread safety with STL
- tips for programming with the STL "vector" and "string" classes (including reserving memory and calling legacy C/C++ code)
- tips for associative containers (including comparing items, sorted vectors and non-standard enhancements to STL)
- tips for selecting and using STL iterator classes
- STL algorithms (including sorting, removing and comparing items)
- using functors with STL
- general tips for STL programming (including advice for choosing algorithms and understanding compiler diagnostic messages)
- string locales
- overcoming STL imitations in Microsoft Visual C++ 6.0
"This is Effective C++ volume three -- it's really that good." -- Herb Sutter, independent consultant and secretary of the ISO/ANSI C++ standards committee"There are very few books which all C++ programmers must have. Add Effective STL to that list." -- Thomas Becker, Senior Software Engineer, Zephyr Associates, Inc., and columnist, C/C++ Users Journal C++'s Standard Template Library is revolutionary, but learning to use it well has always been a challenge. Until now. In this book, best-selling author Scott Meyers (Effective C++, and More Effective C++) reveals the critical rules of thumb employed by the experts -- the things they almost always do or almost always avoid doing -- to get the most out of the library. Other books describe what's in the STL. Effective STL shows you how to use it. Each of the book's 50 guidelines is backed by Meyers' legendary analysis and incisive examples, so you'll learn not only what to do, but also when to do it -- and why. Highlights of Effective STL include: *Advice on choosing among standard STL containers (like vector and list), nonstandard STL containers (like hash_set and hash_map), and non-STL containers (like bitset).*Techniques to maximize the efficiency of the STL and the programs that use it. *Insights into the behavior of iterators, function objects, and allocators, including things you should not do. *Guidance for the proper use of algorithms and member functions whose names are the same (e.g., find), but whose actions differ in subtle (but important) ways. *Discussions of potential portability problems, including straightforward ways to avoid them. Like Meyers' previous books, Effective STL is filled with proven wisdom that comes only from experience. Its clear, concise, penetrating style makes it an essential resource for every STL programmer. See all Product description
Customers who bought this item also bought
There was a problem filtering reviews right now. Please try again later.
Frankly, they are a must-have collection that describe the best way of writing C++ and using the STL. If only they'd been available all those years ago when I first learnt C++ , then I could have saved myself much grief!
Scott's style is very informal and readable. Not only does he make difficult topics easy to understand, but he does so in an interesting and accessible manner.
It's worth pointing out that these books are not intended for learning C++ from scratch, rather they are intended to show you the best ways of applying your knowledge in solving many common programming problems. This STL book focuses on getting the most out of the standard library functions, and avoiding the many pitfalls and misconceptions. All the items are explained with useful code examples (some of which may well find their way into your own libraries of most used functions/templates). Reading this book, not only do you fully understand the STL functions and how to use them properly, but also when to use them and why one may be much better suited to your particular task than the other (similar) functions.
In short, buy it (and his companion books)!
However, please note that this edition is a cheap reprint made with very soft paper and not so crisp character typesetting. I quote from page 3:
"Published by Dorling Kindersley (India) Pvt. Ltd., licensees of Pearson Education in South Asia. [...] Digitally Printed in India by Repro India Ltd. in the year of 2013."
This is not a major problem, apart from the paper and ink being of the cheap quality and some occasional lines looking oddly blurred (this does not happen often in my copy - maybe a dozen times overall). If you care about aesthetics and durability of this text in your bookshelf for many years to come, consider investing the extra money for a European or American edition. Otherwise this version will be just fine.
The 50 items, link together well, and you learn lots of real-world gotchas that are like golden nuggets.
Scott writes great books, so check his Effective C++ books as well.
So instead of boring systematic approach author concentrates on regular usage and operations upon STL. Every C++ professional should have it on his desk so for example when you need to delete container you just open a book and literary copy/paste content.
Despite it's missing C++11 standard it's still valuable reading.