Customer Reviews


13 Reviews
5 star:
 (1)
4 star:
 (3)
3 star:
 (1)
2 star:
 (2)
1 star:
 (6)
 
 
 
 
 
Average Customer Review
Share your thoughts with other customers
Create your own review
 
 
Only search this product's reviews

The most helpful favorable review
The most helpful critical review


6 of 9 people found the following review helpful:
4.0 out of 5 stars Excellent, concise book, if you know C.
When I started learning C++ I looked for a clear, concise book along the lines of Kernighan's and Ritchie's famous book on C. While Pohl's book does not quite come up to that standard, it was the closest to it among the books I thumbed through in the bookstore, and has been an especially good fit for an experienced C programmer like me. It is also an easier first...
Published on March 26, 2000

versus
28 of 28 people found the following review helpful:
1.0 out of 5 stars Yet another bad computer book
As I said in another review, the computer industry is notable for the huge quantity of really bad books it engenders. This is one of those books. Before saying why it is a bad book, I will present the table of contents:

Preface

1. An Overview of C++ and Object-Oriented Programming

2. Native Types and Statements

3. Functions, Pointers, and Arrays

4. Classes

5...

Published on April 26, 2001 by Bowen Simmons


‹ Previous | 1 2 | Next ›
Most Helpful First | Newest First

28 of 28 people found the following review helpful:
1.0 out of 5 stars Yet another bad computer book, April 26, 2001
By 
Bowen Simmons (Sunnyvale, CA USA) - See all my reviews
(REAL NAME)   
As I said in another review, the computer industry is notable for the huge quantity of really bad books it engenders. This is one of those books. Before saying why it is a bad book, I will present the table of contents:

Preface

1. An Overview of C++ and Object-Oriented Programming

2. Native Types and Statements

3. Functions, Pointers, and Arrays

4. Classes

5. Constructors and Destructors

6. Operator Overloading and Conversion

7. Templates, Generic Programming, and STL

8. Inheritance

9. Exceptions

10. OOP Using C++

Appendices

A. ASCII Character Codes

B. Operator Precedence and Associativity

C. Language Guide

D. Input/Output

E. STL and String Libraries

References

Index

So, what makes this book bad?

First, there is the problem of confusion of purpose. The book's title proclaims that it is: "C++ for C Programmers". From the title, the reader would expect that the book would assume that he knew C and would teach him C++. The first sentence of the Preface would support him in this idea: "The book uses an evolutionary teaching process, with C as a starting point and C++ as a destination."

The first odd thing that the reader will notice is that each chapter includes a short section on Java. Why? There is no realistic hope of teaching the reader Java in so short a space; there is no reason to think that the reader wanted the book to teach him Java. The existence of these sections is a mystery.

The second odd thing that the reader will notice is that the book attempts to teach him C. Take for example, the following from the book

"2.81 Assignment and Expressions

In C++, assignment occurs as part of an assignment expression, which can occur in several forms.

a = b + 1;

This expression evaluates the right-hand side of the assignment and converts it to a value compatible with the variable on the left-hand side..."

Now the above is all very well, but if the reader already knows C, he is already aware of this - why explain it to him again? The author's instructions with regard to this question, from the start of the chapter, are curious: "For the experienced C programmer, most of this chapter's material should be skimmed and read mainly with an eye for differences between C and C++. These differences will be listed in the chapter summary, which the experienced C programmer can use to determine what to selectively read about." Quite. If the reader takes the author's advice, he will skip to the chapter summary, and read a summary of the differences. An example of these is the following: "In addition to implicit conversions, which can occur across assignments and in mixed expressions, there are explicit conversions called casts. New keywords introduced in C++ for casts are static_cast, reinterpret_cast, const_cast, and dynamic_cast." As can be seen, the summary does not tell the reader what he needs to know from the chapter, it instead tells him what he should try to go back and find in the chapter. The basic organizational model here is the scavenger hunt: the reader is given a list of things to find, and a locale in which those things are hidden; he is told to flip back and forth and scan until he has found (hopefully) the new material that the author has scattered through the old. The reader could be forgiven for thinking that the author was deliberately wasting his time.

The second problem with the book is that it isn't very informative. For example, take the matter of the casts that are in C++ but not C, which I used in the previous example. The full description in the chapter of the const_cast is as follows:

"Two other special casts exist in C++: const_cast and dynamic cast...The const modifier means that a variable's value is nonmodifiable. Very occasionally, it is convenient to remove this restriction. Doing so is known as 'casting away constness' and is accomplished with the const_cast, as in:

foo(const_cast<int>(c_var)); // used to invoke foo

..."

Now, a cast is a type conversion, so the example would be much clearer if the prototype for foo() and the type of c_var were provided. Sadly, the author has presented neither. Still, the reader might hope that the extensive language guide section in the back would clarify matters. So he checks it and reads the following:

"Two other special casts exist in C++: const_cast and dynamic cast...The const modifier means that a variable's value is nonmodifiable. Very occasionally, it is convenient to remove this restriction. Doing so is known as 'casting away constness' and is accomplished with the const_cast, as in:

foo(const_cast<int>(c_var)); // used to invoke foo

..."

The reader is almost certain to be disappointed at this point - the description in the main text and that in the language reference are word-for-word identical, right down to the same, meaningless example.

The only possible justification for the over-bare descriptions of the new features in the language is to keep the book short, but the book is padded three times over: it has material the reader doesn't want to know (Java), material the reader already knows (C), and material it has already presented (the main text/language guide reprint).

In the absence of justifiable reasons for why the book is the way it is, the reader is forced to assume unjustifiable reasons: that the author and the publisher either didn't know how to keep faith with the reader or that they didn't care to, or quite possibly both.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


12 of 13 people found the following review helpful:
1.0 out of 5 stars I hate this book, August 29, 2000
By 
Geoffrey S. Robinson (Haddon Heights, NJ USA) - See all my reviews
(VINE VOICE)    (REAL NAME)   
This review is from: C++ for C Programmers (Paperback)
I had to unlearn what I learned from this book. I was in the middle of college, I had a horrible professor, and she assigned this book. The book is horribly confusing for one reason. The code examples. The editors take huge sections of code out and leave in "..." in its place. Well, you know what? I'm new and I need a freakin' example in context to figure it out. That's how I learn best. You have to string together code fragments from all over the book just to piece together one program. I got so frustrated with this book. I finally read Sam's Learn C++ in 10 Minutes and everything fell into place. That teaches you something, don't it? They had good examples and I learned right away. At least I know now I'm not an idiot. I actually saw someone's copy of the first edition and it was a good book. But it didn't have the imfamous "...". I assume like many computer company HR departments the editors don't know anything about programming. My advice is to do yourself a favor and get another book.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


6 of 6 people found the following review helpful:
1.0 out of 5 stars The book should be called C++ for C++ Programmers, October 20, 2002
By A Customer
My comment is that it is a badly badly badly badly written book. The book should be called C++ for C++ Programmers - only C++ programmers who know about C++ already can understand what C++ the book want to teach. Most of the informations are too brief. For example:

1. Chapter 5. Constructors and Destructors

Out of the 13 sections in the chapter, I only think section 5.1, 5.2, 5.3, little 5.6, 5.10 and 5.11 should be included there. It wasted whole 4 sections on teaching vectors, linked list, 2-D arrays, polynomial implemented by linked list. These are not core to understanding the features of C++ and should either be consolidated as one example with the sore purpose of illustrating the features of C++ or be removed altogether. Also, there is a problem with the example given in section 5.4 which wasted me several days to figure why. The example simply give you a wrong information on the use of conversion constructor.

Even worse is that the core language features were either not described fully or described by single concise sentences hidden in the middle of paragraphs. For example

i. Default constructor is used to initialise arrays of objects. In some other books, this important concept is described in a separate section or pointed out clearly. Instead, the book only hides the description in two sentences under section 5.1.1. One may overlook this point easily if not paying attention.

ii. section 5.6 members that are classes types. The book gives an example of how a class contains members that are class type. However, the way the members' constructors are called is not explained at all. Again, some other books devote a whole section on this concept.

iii. section 5.1.2 constructor initializer - the book should give more explanation on the precise syntax of constructor initializer. What about when the constructor's body is declared
outside the class?

2. Chapter 4 Classes

I cannot imagine how after reading a chapter on classes, one can still not fully understand the difference between public and private access. And yes, after reading this book's chapter 4, which supposed to be the main chapter explaining class, I still cannot figure out the difference between private and public!!! Once again, only brief explanation on these core and basic concept is given.

section 4.6.1 Scope Resolution operation - what the hell does external scope mean?? Yes, again this is another example of one-sentence explanation of core concept - the unary form of ::

section 4.6.2 nested classes - this is not described in one sentence; however, only 1 page is used to described this complicated concept.

3. Example of other concepts which i was introduced by the book but do not have full understanding: namespace, iostream library.

In short, if you are not a C programmer, don't expect to learn much about C++ after reading this book. And, if you are a C programmer, this book first wastes you a lot of time re-learning the basics of C in Chapter 2 and 3 and confuse you with many one-sentence descriptions of C++ core features in the subsequent chapters.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


5 of 5 people found the following review helpful:
1.0 out of 5 stars If you have to, get this from the library. Don't buy., November 17, 2001
By 
Kevin Benton "KB" (Chicago, IL United States) - See all my reviews
I'm dissapointed that Ira Pohl would write a book with such low quality. His book is inappropriately titled. In his book, he clearly states Java is better than C++. If that's the case, then why is he writing a book on C++? At any rate, this book does a lot to confuse readers by throwing information at us that doesn't apply to C++ knowlege. I feel that the original version of this book (which I own) does better job. Mr. Pohl takes way too much time in this book explaining C. We're C programmers. We don't need to re-learn C. This is one book I don't want in my reference library. "The C++ Programming Language" is a much better book. I often use my local library and it's ordering resources to check out books before buying. At 40-80 bucks a pop, I can't afford to buy junk.

Hits:

1) Includes brief review of STL.
2) Includes more coverage of the C++ language.

Misses:

1) Not worth buying. Might check out from library if really needed.
2) Confuses readers with comparisons of Java vs. C++
3) Treats C programmer as inexperienced.
4) 1st edition much better at focusing on issue of teaching C++ to C programmers.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


7 of 9 people found the following review helpful:
2.0 out of 5 stars Not anywhere near as good as "A book on C", August 8, 2000
By A Customer
I purchased C++ for C programmers because I had previously purchased "A book on C" by the same author and really liked it. I definitely wish that I had not. This book lacks clarity because the author spends too much time introducing details which are not relevant to learning the language. For instance, he continually introduces new abstract data types and in the process completely clouds and confuses the subject in c++ he is supposedly trying to teach. The book should be renamed "my personal tricks in c++"
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


6 of 9 people found the following review helpful:
4.0 out of 5 stars Excellent, concise book, if you know C., March 26, 2000
By A Customer
When I started learning C++ I looked for a clear, concise book along the lines of Kernighan's and Ritchie's famous book on C. While Pohl's book does not quite come up to that standard, it was the closest to it among the books I thumbed through in the bookstore, and has been an especially good fit for an experienced C programmer like me. It is also an easier first book for learning than Stroustrup's book on C++.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


2 of 3 people found the following review helpful:
4.0 out of 5 stars Competent C programmers can gain a lot, April 21, 1999
By A Customer
This review is from: C++ for C Programmers (Paperback)
This book is not a language reference, it's full of unique tactics and language features. People who know C Will gain a lot if they are moving to C++, However a book on purely C++ codes and syntaxes will help the learning process better.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


4.0 out of 5 stars An Obsolete Book for Obsolete Programmers, April 1, 2009
By 
fredtownward "The Analytical Mind; Have Brain... (Mocksville, North Carolina, United States) - See all my reviews
(VINE VOICE)   
I was initially dismayed by the large number of negative reviews, but now that I've completed this book I believe I understand why; this book is really intended for a very narrow target audience: very experienced C programmers with no knowledge of C++ -- i.e., Old Farts,...

like me.

Is there ANY school out there today teaching people C WITHOUT also teaching them C++? It seems unlikely, almost as unlikely as it would be to find a potential employer out there who is seeking Plain Old C programmers today. So if you are an Old C Dog like me looking to learn the "new" trick of C++, this book is for you and ONLY for you! I read it carefully and was able to pass a C++ test that I wouldn't have gotten a single answer right on before I read it. Anyone else looking to learn C++ would be better served by choosing C++ for Dummies or something similar.

Defects? There are a number of them. First, the book does not come with a compiler or a CD-ROM. It DOES come with a URL from which you can download the COMPLETE source code referred to in the book, but you will have to obtain your own compiler, and chances are, you will have to considerably modify the comparatively ancient source code in order to get it to compile for you. There are some things that you used to be able to do in C++ that you just cannot do any longer, at least not without turning off a lot of modern ANSI compiler errors.

Second, because this is intended as a textbook, there are no answers to the end of chapter exercises, at least not unless you find yourself a Teacher's Edition.

Finally, I have to agree with the reviewers who question the thinking behind the "Moving from C++ to Java" section at the end of each chapter. Sure, it is somewhat interesting to see one of the chapter's C++ programs rewritten in Java, but it is nothing close to enough to learn Java from so what's the point?
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


2 of 4 people found the following review helpful:
1.0 out of 5 stars Not easy to use, December 14, 1999
By A Customer
A difficult book to use. When talking about the primative type (ie INT) it discusses complex numbers? The index does not have the C terminology so that you can look up the C functions (ie malloc) to see how it is done in C++.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


0 of 1 people found the following review helpful:
3.0 out of 5 stars a somewhat scatterbrained approach, August 1, 1999
By A Customer
This review is from: C++ for C Programmers (Paperback)
C++ is a broad subject and can be approached from many angles. Ira Pohl's approach is so non-standard, it left my head spinning. I read this book twice and still refer to it, but Pohl's PhD.-speak keeps getting in the way. If you like to read books written using down-to-earth termonology, look elsewhere...buy if you want to talk and write like a C++ guru, just imitate Pohl's literary style.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


‹ Previous | 1 2 | Next ›
Most Helpful First | Newest First

This product

C++ for C Programmers
C++ for C Programmers by Ira Pohl (Paperback - Sept. 1993)
Used & New from: $0.01
Add to wishlist See buying options