By about page 689 I had read the word "suppose" once too often. Mr. Malik's coherence fell apart when he got to the object-oriented stuff, and he started to use examples to *start* explanations. His meandering paragraphs begun with the word "suppose" are generally not helpful. Don't let chapter 12 (Inheritance and composition) discourage you, though. It's the worst of them and it gets better after that.
If you like to highlight your textbooks you will be frustrated by this book. You will spend a lot of time pondering if you really want to highlight an entire 12-line paragraph when what is explained could be stated in a single sentence. So, here's a hint: Read each section between the purple headings through before highlighting anything. Sometimes you'll find your concise sentence further on. If you don't, make use of the white space to write one yourself. This will aid in memory, and save your highlighter.
This should have been a shorter book, and the object-oriented stuff should have received some editing for clearer, more concise language.
The example code is redundant and the explanations unnecessarily long. Each problem is exhaustively set up and explained, with code segments that are duplicated in the finalized code. You'll find yourself skipping the setup of the problem and going right to the finalized code to see if you understand it, and invariably you will, because it is not complex. The examples are uninteresting and demonstrate things that are simple.
One really nice feature of this book? You don't have to get 300 pages into it before it will lie flat on your desk. It stays open nicely and has bright, white pages.
A summary of the contents:
One chapter on computers, programming languages, the process of writing a program, and a description of and background on C++.
Almost six hundred pages on non-object-oriented C++ language stuff. It does not assume you already know programming. Tiringly verbose, but seems comprehensive and well-organized.
About 350 pages on the object-oriented features of C++. It's not difficult material but it's not explained coherently. If this is the stuff you are most interested in you will be disappointed.
About 300 pages on applying C++ to algorithms, such as searching and sorting, liked lists and binary trees. Classic first-year CS course material. Perhaps the best-presented part of the book.
A chapter on the Standard Template Library.