Accelerated C++ [Paperback]Practical Programming by Exampleby Andrew Koenig and Barbara E. Moo
Usually ships within 2 to 4 working days Description of Accelerated C++Want to learn how to program in C++ immediately? Want to start writing better, more powerful C++ programs today? Accelerated C++'s uniquely modern approach will help you learn faster and more fluently than you ever believed possible. Based on the authors' intensive summer C++ courses at Stanford University, Accelerated C++ covers virtually every concept that most professional C++ programmers will ever use -- but it turns the "traditional" C++ curriculum upside down, starting with the high-level C++ data structures and algorithms that let you write robust programs immediately. Once you're getting results, Accelerated C++ takes you "under the hood," introducing complex language features such as memory management in context, and explaining exactly how and when to use them. From start to finish, the book concentrates on solving problems, rather than learning language and library features for their own sake. The result: You'll be writing real-world programs in no time -- and outstanding code faster than you ever imagined.Title Information
Write a review of this book Customer Reviews from AmazonAbout Andrew Koenig and Barbara E. MooAndrew Koenig is a member of the Large-Scale Programming Research Department at AT&T's Shannon Laboratory, and the Project Editor of the C++ standards committee. A programmer for more than 30 years, 15 of them in C++, he has published more than 150 articles about C++, and speaks on the topic worldwide. Barbara E. Moo is an independent consultant with 20 years' experience in the software field. During her nearly 15 years at AT&T, she worked on one of the first commercial products ever written in C++, managed the company's first C++ compiler project, and directed the development of AT&T's award-winning WorldNet Internet service business. 0Contents of Accelerated C++0. Getting startedComments #include The main function Curly braces Using the standard library for output The return statement A slightly deeper look Details 1. Working with strings Input Framing a name Details 2. Looping and counting The problem Overall structure Writing an unknown number of rows Writing a row The complete framing program Counting Details 3. Working with batches of data Computing student grades Using medians instead of averages Details 4. Organizing programs and data Organizing computations Organizing data Putting it all together Partitioning the grading program The revised grading program Details 5. Using sequential containers and analyzing strings Separating students into categories Iterators Using iterators instead of indices Rethinking our data structure for better performance The list type Taking strings apart Testing our split function Putting strings together Details 6. Using library algorithms Analyzing strings Comparing grading schemes Classifying students, revisited Algorithms, containers, and iterators Details 7. Using associative containers Containers that support efficient look-up Counting words Generating a cross-reference table Generating sentences A note on performance Details 8. Writing generic functions What is a generic function? Data-structure independence Input and output iterators Using iterators for flexibility Details 9. Defining new types Student_info revisited Class types Protection The Student_info class Constructors Using the Student_info class Details 10. Managing memory and low-level data structures Pointers and arrays String literals revisited Initializing arrays of character pointers Arguments to main Reading and writing files Three kinds of memory management Details 11. Defining abstract data types The Vec class Implementing the Vec class Copy control Dynamic Vecs Flexible memory management Details 12. Making class objects act like values A simple string class Automatic conversions Str operations Some conversions are hazardous Conversion operators Conversions and memory management Details 13. Using inheritance and dynamic binding Inheritance Polymorphism and virtual functions Using inheritance to solve our problem A simple handle class Using the handle class Subtleties Details 14. Managing memory (almost) automatically Handles that copy their objects Reference-counted handles Handles that let you decide when to share data An improvement on controllable handles Details 15. Revisiting character pictures Design Implementation Details 16. Where do we go from here? Use the abstractions you have Learn more Appendix A: Language details Declarations Types Expressions Statements Appendix B: Library summary Input-output Containers and iterators Algorithms Index |
Related Categories
|