Learn more Shop now Learn more Shop now Shop now Shop now Shop now Learn More Shop now Shop now Learn more Shop Fire Shop Kindle Worried Blues Shop now Fitbit

There was a problem filtering reviews right now. Please try again later.

on 7 April 2017
A well organised and straight forward introduction for the experienced programmer, definitely not for beginners. Well worth having on the shelf. I only wish there was a part II to guide us through C++11x and C++14x
0Comment|Was this review helpful to you?YesNoReport abuse
on 21 April 2013
Amongst other things I'm a professional trainer, and I've been teaching technical subjects on and off for the last 24 years. I bought this book about a year ago because I'd been asked to provide C++ training and although I'd been teaching in C on and off I'd never delivered a C++ course.
I prefer shorter books that stick to the subject, this book does that at 300 pages. It excels at introducing the simple concepts at the start however it's a slave to its examples. This gives the book some problems as it attacks the more complex aspects of C++ as - although one can understand what is being taught, the slavish manner in which new concepts are introduced into the book's 'student grades' example leaves one floundering somewhat with respect to the 'framing' of the newly introduced concepts.
People learn most effectively when knowledge is 'framed' meaning its related to some (hopefully) more familiar concept. Clearly the authors understand this principle, and the 'student grades' program is meant to serve this purpose, however the book fails to really get the reader to understand how and where the knowledge provided fits into the spectrum of C++ knowledge rather than just the 'student grades' program.
The exercises are excellent but aside from the first few on each chapter I would judge that they are too difficult for 'normal' learners. The authors' attempt to introduce aspects of programming by forcing the reader to code up solutions that would be easy if you'd read on a couple of chapters. This is an approach often taken by academic's - the idea is that one appreciates the knowledge gained by understanding how difficult it would be if you didn't know it. To someone who wants 'accelerated learning' as the title of the book promises, this is soul destroying and a waste of time. The result is that one ends up skipping examples because you know they'll be teaching you how to do it properly in a couple of chapters.
If you really wanted to start from scratch and learn C++ you would have no idea on how to compile the examples in this book, let alone understand; what a compiler is, the phases of compilation, the pre-processor, the link-edit phase libraries and dynamic linking. These are concepts that I introduce in 'chapter one' of my courses, before the first break, to build confidence in what the delegates are about to learn.
This book has other glaring omissions, namely the C++, Standard Template Library. Although the features of the STL are taught in the book, they aren't really identified in a manner that allows the reader to gain perspective and confidence in their use.
Probably the most inexcusable chapter in the book is chapter 8, 'Writing generic functions'. After much consideration I believe that the book seems to have little idea of how to teach one of the most important concepts in C++ which itself is essential to fully appreciate the power of the STL. The reader is left floundering at the end of this chapter wondering what it was all about. If taught properly template classes and functions is a fairly simple topic which is easy to understand and allows the learner to get to grips with what the STL is doing for them. This book just 'drops the ball' so badly that the learners confidence is destroyed, rather than built up.
If you already know how to program, you already know a bit of C, you know how to compile, you have other reference material, you aren't discouraged by chapter 8, you could probably learn C++ quite quickly from this book, however if you want to learn C++ rapidly from scratch I doubt very much that you would match the claim on the book that '..student's learned how to write substantial programs on their first day in the classroom..' because the book just assumes you have knowledge that you probably don't have.
33 Comments| 11 people found this helpful. Was this review helpful to you?YesNoReport abuse
on 25 July 2001
I have a collection of C++ books, and none like THIS one. I bought it following the controversy it caused by its new approach to C++. While I believe that it might be ,at first, a bit steep for new learners, I think it is THE books to start with. You will get aquainted with essential skills in C++ (mainly the use of the highly portable STL)and quickly start writing effective, bullet proof programs. I will be buying all the books in the series including Modern C++ design and Strourstrup's manual...
0Comment| 27 people found this helpful. Was this review helpful to you?YesNoReport abuse
on 28 January 2007
An excellent book. Explains an obtuse and arcane language brilliantly. Understand the book and you will understand C++. It is not a reference book. It is not a boring rehash of basic general programming concepts and syntax. It is an exploration by example of C++ concepts as they apply to program development. Examples are easy to understand but build surely and incrementally on one another. Enlightenment sneaks up the reader.

Very very few books on C++ will give offer as attractive a effort / reward ratio as this offering. Buy the book.
0Comment| 8 people found this helpful. Was this review helpful to you?YesNoReport abuse
VINE VOICEon 2 June 2005
A good introduction to C++ for anyone who's got prior programming experience and wants to get quickly into modern C++.
Takes you straight into useful stuff like lists, vectors and strings. The only trouble is that when you've finished the book, you feel you want a reference to what you've just read, but the information you want is somewhat scattered through the book.
0Comment| 8 people found this helpful. Was this review helpful to you?YesNoReport abuse
on 22 January 2007
I found this book clear and practical to follow as new student to programming, it certainly got me thinking about the why rather than the how. I enjoyed the writing style and the fact its a very concise, but effective 350 pages.

However it was not an easy ride and I had to revisit each chapter a few times and use other resources. I also think it's a book you need to follow in detail and in order to really "get it"!

Overall a really worthwhile book, that I wish I brought at the beginning of my course and one I intend to keep. It worked for me, as I feel I gain a goof insight into C++, but as always in a question of learning style, needs and previous background!

Probably deserved 5 stars, but I'm not either that knowledgeable or educated!
0Comment| 6 people found this helpful. Was this review helpful to you?YesNoReport abuse
on 20 September 2000
This excellent book, go right into programming, giving you an appropriate examples. It is defenitely recomended for anyone, especially for beginners who want to be able writing programs from very beggining. Authors teach us C++ by presenting programming problems to be solved used the library right from the start, concentrated on writing useful programs. Explainations of the C++ features are in willing to support the programs, rather than using them as an excuse to demonstrate the features. This book is a nice approach to the new methods of explaining programming language and it is really way to ACCELERATE of learning C++ (without frustration how to write my first program). Once again... warmly recomended.
0Comment| 17 people found this helpful. Was this review helpful to you?YesNoReport abuse
on 2 July 2004
this book is without exception. most other books which claim to teach C++ are in fact teaching C with OOP. the approach from this book is *completely* different. it doesn't patronise the reader by assuming they're far to stupid to learn C++ and so must be tricked into learning C first, then halfway through the book change tact and start teaching them a confusing mish-mash of C/C++/OOP. after reading this book and comparing it with other so-called C++ books you genuinely get the impression that all those other authors probably can't programme in strict C++ to save their lives, and have only jumped on the C++ book bandwagon to make an easy buck (if there's a C way of doing it, then those authors will teach you that!).
this book is different, from the very offset you are plunged into C++ and therefore start learning very good + habits (like namespaces, use of headers and not header files, etc). do not underestimate this quality! C++ is a seperate lanugage! anyone who programmes in command-line *nix will know this bitterly.
the authors have contributed massively to the C++ language project and know it inside out! these individuals are + evangelicals. i highly recommend most books written by the "Bajarne Stroustrup gang" (see "C++ indepth series")
for the simple reason that this book is genuinely C++ i highly recommend it to all beginners who have some knowledge of programming.
0Comment| 26 people found this helpful. Was this review helpful to you?YesNoReport abuse
on 9 December 2006
This is a tutorial book on C++, but it goes well beyond the basics. In fact, I'm pretty sure it covers pretty much every major language feature and implementation detail you need for robust C++ coding. As such, it merits re-reading as your understanding of C++ grows, and I say that as someone who rarely re-reads computer books. Don't worry - it packs all the important bits of C++ in under 300 pages. And allow yourself a smug pat on the back when you're confident about everything that's written here.

C++ books historically assume the reader is migrating to C++ from C, and adopt a 'ontogeny recapitulates phylogeny' style approach, introducing low level details from C, before the more advanced features. This has the effect of swamping a beginner with unnecessary complications, when in fact the abstractions of modern C++ hide memory managment and pointer issues entirely. The authors of Accelerated C++ have recognised this and introduce the likes of strings and vectors very early, so their examples actually do something practical. They use an extended example of keeping track of student homework records for many of these early chapters, and the skill with which they are able to slowly introduce new features as they extend the scope of the code is very impressive.

As a result, someone with experience of procedural programming can probably get through the first six chapters, which is just under the half the book. By which time, they've been introduced to the standard library's string class, plus various containers and algorithms. All this and not a mention of a pointer or a malloc.

After this point, however, the discussion becomes a little less hands-on, and focuses on defining your own types. The authors do this by walking through the creation of basic versions of the vector and string class. This covers issues ranging from templates to constructors and destructors, to overloading operators, and I would advise previous exposure to basic object oriented principles like encapsulation to be able to follow it fully.

Pointers and arrays are eventually introduced, and then there's a fairly involved chapter on using 'smart' pointers to manage memory. At this point, I would recommend having been previously exposed to C and to be comfortable with pointers and allocating and freeing memory.

Finally, there's a chapter on object-oriented programming, making use of polymorphism. This is not the strongest part of the book. The mechanics of polymorphism in C++ are well described, but the underlying design issues are not.

If you're looking for a book that will teach you C++ from the ground up in one sitting, forget about it. No book can do that, C++ straddles too many programming paradigms. But this book comes close. I would suggest reading as far as you can until your brain hurts, then following up with a book that has a more traditional arrangement of topics - if you have knowledge of C, then Bruce Eckel's Thinking in C++ is perfect. Then, come back to this one, you'll probably find you can get a little further before getting stuck.

With that in mind, this is a book I would unhesitatingly recommend for anyone seeking to learn C++, whatever their level of expertise. Unlike other introductory books, experienced programmers will not find themselves skipping large chunks of the introductory chapters. And if you're already using C++, but treating it just as an improved C, this will open your eyes to the C++ way of doing things.

Of all the books published on C++ over the years, some titles crop up again and again on the recommended reading lists. This unique book is one of them and it's entirely deserved. If only there were more out there like this one...
0Comment| 53 people found this helpful. Was this review helpful to you?YesNoReport abuse
on 9 August 2003
Before reading Accelerated C++, I had only a limited knowledge of programming, and knew nothing of C or C++. I tried a few other beginner books first, but found that they introduced new concepts without explaining them properly. The best thing about this book is that first come the examples, then the explanations. You're not inundated with technical details of a new concept, until after you're shown how it can be used in a practical way.
I've seen other books that try to teach you C++ from the ground up, not giving useful advice until they've bored you with pointers and memory management and so on. Let me say, the way these folks do it (high-level library functions first, primitive data structures later, then OO at the end) is surely the way to go. What's more, this book gets you in the habit of elegant, modular programming, although its main focus is on problem-solving, not style.
Not a chunky read, as programming books go, but every page is worth its weight in gold. The small size of the book (300-odd pages) reflects what I noticed throughout: an emphasis on quality, not quantity.
0Comment| 43 people found this helpful. Was this review helpful to you?YesNoReport abuse