- Paperback: 352 pages
- Publisher: Addison-Wesley Professional; 1 edition (August 24, 2000)
- Language: English
- ISBN-10: 020170353X
- ISBN-13: 978-0201703535
- Product Dimensions: 7.3 x 1 x 9.1 inches
- Shipping Weight: 1.1 pounds (View shipping rates and policies)
- Average Customer Review: 149 customer reviews
- Amazon Best Sellers Rank: #37,309 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.
Accelerated C++: Practical Programming by Example 1st Edition
Use the Amazon App to scan ISBNs and compare prices.
The Amazon Book Review
Author interviews, book reviews, editors picks, and more. Read it now
Frequently bought together
Customers who bought this item also bought
Customers who viewed this item also viewed
If you don't have a lot of time, but still want to learn the latest in C++, you don't have to learn C first. You might learn more by digging into current language features and classes from the very beginning. That's the approach that's offered by Accelerated C++, a text that delves into more advanced C++ features like templates and Standard Template Library (STL) collection classes early on. This book arguably can get a motivated beginning programmer into C++ more quickly than other available tutorials.
What separates this title from the rest of the pack is that it jumps right in with samples that take advantage of the Standard C++ of today--from streams to built-in container classes, such as vectors and linked lists. Early examples are more complex than in other books, but the thoroughness and relaxed pace of the explanations will bring the novice up to speed. (Although it ships at a slender 350 pages, Accelerated C++ is packed with samples, tips, and example problems; about 10 per chapter.)
After a tour of basic C++, the book looks at more advanced C++ features, such as templates, including built-in support for containers. Besides tapping the strength of Standard C++, you also will learn to design with your own templates. (Other tutorials would defer this material until later on.) The authors have tested the approach in the book in their own teaching, and honed a set of worthwhile examples that will help anyone get familiar with these powerful language features. All examples make use of the command line and console (without GUI programs), but the advantage is that this code should run on any of today's operating systems and compilers. Later sections cover the basics of class design, which include good coverage of operator overloading and inheritance.
With its innovative approach to teaching the language, Accelerated C++ will challenge readers in the right way. It suggests that you don't need to learn C to be productive in C++. Written in an approachable style, it deserves a close look from any C++ novice. --Richard Dragan
- Introduction to C++
- Console I/O with stream classes
- Basic string handling
- Loop and flow-control statements
- Using functions and methods
- Using Standard Template Library (STL) containers (vectors, linked lists, and maps)
- Sorting and generic functions
- Basic class design
- Pointers and arrays
- File I/O
- Memory-management techniques, including statically and dynamically allocated memory
- Adding stream support to custom classes
- Conversion operators
- Operator overloading
- Friend functions
- Polymorphism and virtual functions
- Handle idioms for classes, including reference counting
- Quick reference to the C++ language
From the Back Cover
This is a first-rate introductory book that takes a practical approach to solving problems using C++. It covers a much wider scope of C++ programming than other introductory books I've seen, and in a surprisingly compact format.--Dag Brück, founding member of the ANSI/ISO C++ committee
The authors present a clear, cogent introduction to C++ programming in a way that gets the student writing nontrivial programs immediately.--Stephen Clamage, Sun Microsystems, Inc., and chair of the ANSI C++ committee
Anyone reading just this one book and working through the examples and exercises will have the same skills as many professional programmers.--Jeffrey D. Oldham, Stanford University
Why is Accelerated C++ so effective? Because it
- Starts with the most useful concepts rather than the most primitive ones: You can begin writing programs immediately.
- Describes real problems and solutions, not just language features: You see not only what each feature is, but also how to use it.
- Covers the language and standard library together: You can use the library right from the start.
Whether you are eager to get started writing your first C++ programs, or you are already using C++ and seeking deeper understanding, the authors' unique approach and expertise make Accelerated C++ an indispensable addition to your library.
Top customer reviews
There was a problem filtering reviews right now. Please try again later.
This is an especially great way for people who already know how to program, but want to learn C++ in particular. I come from a Perl and Python background, but want to get into the systems programming world. There is minimal belaboring of simple concepts like variables and loops, and instead the focus is on building useful abstractions and applying them to reasonable real world problems. Each chapter has some exercises at the end which cement and then extend what you learn in that chapter, but they manage not to end up feeling like college CS homework and not chew up more time than feels reasonable considering what you're trying to accomplish with the book.
I should point out that I have prior experience with C++ and I would not recommend this book as an independent study as an introduction to programming or to people who have not heard of or used C or C++. I think these candidates would have a better served by another book. However, if you have at least written 60+ programs ranging from simple user input to a library independent linked list implementation with primitives (basic data types), then I highly recommend this book.
The book brings together different parts of C++ and leverages the standard library from the beginning and therefore encourages good programming practices. For example, when building small input programs you can get away with using int data type to store the length of a string. However, one should use the string size_type data type to store the size of a string as an int is limited by a 32bit number. The book reinforces these ideas and presents them in a clear concise manner leaving them ingrained for your future programming efforts. Additionally there is some light shown on algorithms and why certain data types support certain operations faster than other data types. The book is a great place to start if you are looking to produce production quality code.
All in all there is much to learn from this book provided you read each chapter and complete all the exercises.
The Good: This book does not talk down to the reader. It assumes that you are intelligent and implicitly expects you to have previously come into contact with either procedural or object-oriented programming. Many different topics are covered in a short space (around 300 pages in total), but the text is highly readable owing to the authors's relaxed tone, as well as their many cross-references and their detailed explanations of the examples (after all, the book's subtitle is "practical programming by example"). Equally important, the authors have provided on their website the source code for all the examples in the book (and more), packaged for different platforms. As should be obvious, modifying, compiling, and running the code in parallel to reading the text is integral to understanding the concepts being introduced. In contradistinction to many other popular volumes, this book teaches real C++, not "C with classes". To illustrate this point, let me note that pointers and arrays are only introduced in Chapter 10 (of 16). "Accelerated C++" jumps right in and describes a variety of topics that are of use to professional C++ programmers, such as standard library algorithms, templates, allocators, dynamic binding, and more.
The Bad: Some readers may find the student-grading and character-pictures examples a little boring (though what simple example isn't somewhat boring?). Also, the difficulty level of the exercises is not consistent (e.g. some have already been worked out in the provided source code). This book isn't really great as a reference: new concepts are introduced when they are needed for the purposes of the examples. This means that the chapters cannot really be read out of order. Futhermore, certain things like bitsets, switches, enums, and multiple inheritance are either relegated to the Appendices or are not mentioned at all. In a similar vein, object-oriented programming is not thoroughly discussed (as can be expected from such a short book): e.g., inheritance is introduced in chapter 13 (of 16). Finally, this book was published in 2000 and quite a bit has changed in the meantime. Most notably, we are now expecting a new standard to come out (still known as C++0x). Unfortunately, this book doesn't talk about TR1 (a specification for functionality being added to C++'s standard library) or boost (a collection of libraries offering TR1 implementations and much more), or threading in C++. A new edition of "Accelerated C++" apparently is in the works.
Lest the reader feel that I am being too negative, I note that it is impossible for one book to please everyone and cover everything, while being always up-to-date and still remaining short. In a nutshell, this book is great at what it intends to be: a fast-paced, authoritative, and pedagogically sound introduction to (1998/2003) standard C++ . This book definitely deserves 5 stars.
My two cents on recommended follow-ups:
* C++ Primer, 4th edition, by Stanley B. Lippman, Josee Lajoie, Barbara E. Moo
A great second book which can be used to solidify and expand your understanding. The "C++ Primer" is over 800 pages long, but it is so well written that it can either be read cover-to-cover or used as a reference (see also my review of it on amazon).
* Effective C++, 3rd edition, by Scott Meyers
This assumes you have already come across all of the material contained in "Accelerated C++" and in the "C++ Primer". It offers solid advice on numerous aspects of effective C++ development. Meyers also describes a few design patterns as well as more modern topics like TR1.
Most recent customer reviews
How the memory works when an instance of a class is initialized/copied/etc...Read more