Amazon.com: C++ For C Programmers, Third Edition (3rd Edition) (9780201395198): Ira Pohl: Books


or
Sign in to turn on 1-Click ordering.
or
Amazon Prime Free Trial required. Sign up when you check out. Learn More
Sell Back Your Copy
For a $1.10 Gift Card
Trade in
More Buying Choices
Have one to sell? Sell yours here
C++ For C Programmers, Third Edition (3rd Edition)
 
See larger image
 
Tell the Publisher!
I'd like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

C++ For C Programmers, Third Edition (3rd Edition) [Paperback]

Ira Pohl (Author)
2.3 out of 5 stars  See all reviews (13 customer reviews)

List Price: $44.99
Price: $34.82 & this item ships for FREE with Super Saver Shipping. Details
You Save: $10.17 (23%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.
Only 11 left in stock--order soon (more on the way).
Want it delivered Friday, February 24? Choose One-Day Shipping at checkout. Details
Textbook Student FREE Two-Day Shipping for students on millions of items. Learn more

Formats

Amazon Price New from Used from
Hardcover --  
Paperback $34.82  

Book Description

November 20, 1998 0201395193 978-0201395198 3
Extensively revised and updated, this proven book by noted C++/C expert Ira Pohl is written specifically for C programmers who are transitioning to C++. The book takes an evolutionary teaching approach, using C as a starting point and C++ as a destination. This third edition reflects the new ANSI C++ Standard, and covers the latest language features -- including detailed discussions of templates, STL, and exception handling.

Frequently Bought Together

Customers buy this book with Data Structures and Algorithm Analysis in C++ (3rd Edition) $112.49

C++ For C Programmers, Third Edition (3rd Edition) + Data Structures and Algorithm Analysis in C++ (3rd Edition)
Price For Both: $147.31

Show availability and shipping details

  • This item: C++ For C Programmers, Third Edition (3rd Edition)

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • Data Structures and Algorithm Analysis in C++ (3rd Edition)

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details



Editorial Reviews

From the Back Cover

Extensively revised and updated, this proven book by noted C++/C expert Ira Pohl is written specifically for C programmers who are transitioning to C++. C++ For C Programmers, Third Edition takes an evolutionary teaching approach, using C as a starting point and C++ as a destination. This third edition reflects the new ANSI C++ Standard, and covers the latest language features--including detailed discussions of templates, STL, and exception handling. Each chapter contains a brief examination of Java that compares and contrasts it with C++, providing the C programmer with a more complete understanding of both C and C++ and their relationship to Java.

Highlights of C++ for C Programmers, Third Edition, include:

  • A smooth transition to C++ and object-oriented programming for programmers already familiar with C
  • Extensive exercises and frequent language comparisons to teach concepts quickly and to introduce the language's powerful object-oriented features
  • Pohl's trademark "dissection" code presentation technique, which illustrates the underlying structure of programs and makes design tradeoffs understandable


0201395193B04062001

About the Author

Ira Pohl is a Professor of Computer Science at the University of California, Santa Cruz and holds a Ph.D. in Computer Science from Stanford University. His research interests include artificial intelligence, the C and C++ programming languages, practical complexity problems, heuristic search methods, deductive algorithms, and educational and social issues. He originated error analysis in heuristic search methods and deductive algorithms.

Professor Pohl was formerly a Mackay professor at University of California- Berkeley and a ZWO fellow in the Netherlands. He is the author or co-author of Object-Oriented Programming Using C++, C++ Distilled: A Concise Ansi/Iso Reference and Style Guide, C by Dissection: The Essentials of C Programming, A Book on C: Programming in C, C++ for C Programmers, C++ for Fortran Programmers, C++ for Pascal Programmers, and Turbo C: The Essentials of C Programming, all published by Addison-Wesley.

0201395193AB04062001


Product Details

  • Paperback: 512 pages
  • Publisher: Addison-Wesley Professional; 3 edition (November 20, 1998)
  • Language: English
  • ISBN-10: 0201395193
  • ISBN-13: 978-0201395198
  • Product Dimensions: 9.2 x 7.4 x 1 inches
  • Shipping Weight: 1.8 pounds (View shipping rates and policies)
  • Average Customer Review: 2.3 out of 5 stars  See all reviews (13 customer reviews)
  • Amazon Best Sellers Rank: #1,255,186 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, read author blogs, and more.

 

Customer Reviews

13 Reviews
5 star:
 (1)
4 star:
 (3)
3 star:
 (1)
2 star:
 (2)
1 star:
 (6)
 
 
 
 
 
Average Customer Review
2.3 out of 5 stars (13 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

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)   
This review is from: C++ For C Programmers, Third Edition (3rd Edition) (Paperback)
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
This review is from: C++ For C Programmers, Third Edition (3rd Edition) (Paperback)
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

Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews











Only search this product's reviews



What Other Items Do Customers Buy After Viewing This Item?


Suggested Tags from Similar Products

 (What's this?)
Be the first one to add a relevant tag (keyword that's strongly related to this product).
 
(91)
(13)
(11)

Your tags: Add your first tag
 

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
Search all Amazon discussions
   
Related forums





Look for Similar Items by Category


Look for Similar Items by Subject