- 出版社: O'Reilly Media, Inc, USA; 2nd Revised edition (2003年1月3日)
- 平装: 576页
- 语种： 英语
- ISBN: 0596004192
- 条形码: 0636920004196, 9780596004194
- 商品尺寸: 17.8 x 3.3 x 23.3 cm
- 商品重量: 885 g
- ASIN: 0596004192
- 用户评分: 分享我的评价
- 亚马逊热销商品排名: 图书商品里排第738,881名 (查看图书商品销售排行榜)
Practical C++ Programming (英语) 平装 – 2003年1月3日
买满 ￥168.00 立减 ￥20.00: 满足条件自动优惠
"When I picked up Practical C++ I was very skeptical, I've read numerous books aimed at beginner/intermediate readers and very few of them left any lasting impression on me. This book however, did! It's an excellent book, and it feels like it's written by a programmer and not an academic as most tend to. Not only are you going to learn about C++ in the easiest way possible, you're going to learn a lot of tips from someone who's been developing in C++ a long time. ... But I can't say enough good things about this book, it covers a lot more than C++, and it has a whole chapter on program design. This book is all you need to get started with C++. The title says Practical C++ and I'd say it's very practical. Highly recommended." - Peter Waller, news@UK
Steve Qualline lives in Southern California, where he works as a software engineer for a major phone company. In his free time he is a real engineer on the Poway Midland Railroad. Steve has written almost a dozen books on programming and Linux software.
I'll admit I'm only half way through this book as I'm writing this, however I felt the book needed more fair reviews. I'm a fan of the O'Reilly books in general, but their objectives don't always match the writing, and the styles vary wildly.
This book is fantastic for intermediate to advanced coders but poor for new programmers for several reasons. For experienced coders the book has very clear examples of optimized code which can help fix that certain hang up or tricky reference/computation. The author is very methodical in the explanations of why a certain technique is good or bad, and puts in personal fun bits ("difference between AND and AND AND"). Unfortunately, for inexperienced programmers the code examples could be a bit tricky in terms of explanations and there are a few parts where it basicallly says "insert other bits of code here".
Another area where the book is good for advanced but poor for new programmers would be the questions and challenges mixed in the book. There are sections of example code which the author explains return an error and what the error is, the reader is then challeneged to uncover the error in the offending code. In all cases the challenege has the answer explained one or two pages later. I could understand this behavior would infuriate someone just learning the language, but it does remind the reader to watch out for the simple mistakes.
All in all I am glad I bought the book, but would only reccomend it if someone were truely dedicated to perfecting their C++ code and wielding it deftly. The cute squirrel helps too.
Bad move. The text is just filled with errors and bugs. Some bugs are so rudimentary you just have to question whether the authors tested the code. For instace, the section on substr on P.50:
"... to extract a portion of a string, there is the substr member function. [Form of function is]:
This function returns a string containing all the characters from first to last. ... "
And proceeds to give an example. Alas; the form of the substr function is NOT string.substr(first, last), but string.substr(first, number of characters). This caused me a good half hour of confusion and head scratching. I simply did not expect the book to get this wrong, and especially not with substr examples given right after.
Apart from bugs, typos and related logistic errors, this book suffers from poor integration of material. The chapters on Style and Programming Adages are pretty good, but the rest of the chapters (30 chapters in total) really need some serious conlidation. It's easy reading, true, but for me, it's hard to acquire a good understanding of C++ out of it.
The title of the book is somewhat misleading. A more appropriate title would be "Introductory C++ Programming". You cannot turn to this book when writing practical code.
So these days when I have C++ blues I turn to the other C++ books lying around in my lab, ruing at the same time for throwing away ~$30 getting this book. My enthusiasm and high praise for the O'Reilly series of programming books has taken a hit.
This copying extends to the ridiculous. In Practical C Programming, he gives a couple examples of optimization. They're reprinted word-for-word in Practical C++ Programming. Has he only done two code optimizations in his life? And obviously, these two weren't done with C++ in mind.
He's obviously a C programmer (and I think probably a pretty good one) who tried to write a C++ book but didn't really make much of a mental evolution. For example, his chapters on data structures are reprinted here, and they're the same words he used in his first book to discuss linked lists, trees, etc. That's fine and good, but the coverage of the STL, inheritance, design patterns, etc. is either very sparse or completely missing. It'd be better to have more discussion of inheritance and other OOP features than "how to write a linked list in C".
Judging by this book, Oualline is not a C++ expert but rather a C guy who views C++ as "more of the same". He took his earlier manuscript and marked it up with changes. A book that discusses C++ from the outset - rather than as an afterthought - would be much better.
Avoid this book.