Ivor Horton's Beginning Visual C++ 2008 Paperback – Mar 31 2008
|New from||Used from|
Customers Who Bought This Item Also Bought
No Kindle device required. Download one of the Free Kindle apps to start reading Kindle books on your smartphone, tablet, and computer.
To get the free app, enter your e-mail address or mobile phone number.
From the Back Cover
Ivor Horton's Beginning Visual C++ 2008
Proudly presenting the latest edition of one of the all-time bestselling books on the C++ language, successful author Ivor Horton repeats the formula that has made each previous edition so popular by teaching you both the standard C++ language and C++/CLI as well as Visual C++ 2008. Thoroughly updated for the 2008 release, this book shows you how to build real-world applications using Visual C++ and guides you through the ins and outs of C++ development.
Horton's accessible approach and detailed examples cover both flavors of the C++ language—native ISO/ANSIC++ Windows application development using the Microsoft Foundation Classes (MFC), as well as the development of C++/CLI Windows applications using Windows Forms. He also introduces you to the techniques you can use for accessing data sources in both MFC and Windows Forms, and working examples demonstrate each programming technique that is being discussed. With this book by your side, you are well on your way to becoming a successful C++ programmer.
What you will learn from this book
How to use the Standard Template Library, a powerful and extensive set of tools for organizing and manipulating data in your native C++ programs
Techniques for finding errors in your C++ programs
The ways that Microsoft® Windows® applications are structured and the elements that are essential for each application
How to create and use common controls in order to build the graphical user interface for your application
Ways to develop your own libraries using MFC
The different controls that are available for accessing data sources, how they work, and how to customize them
Who this book is for
This book is for anyone who wants to write C++ applications for the Microsoft Windows OS. No prior experience of any programming language is assumed.
Wrox Beginning guides are crafted to make learning programming languages and technologies easier than you think, providing a structured, tutorial format that will guide you through all the techniques involved.
About the Author
Ivor Horton graduated as a mathematician and was lured into information technology by promises of great rewards for very little work. In spite of the reality being usually a great deal of work for relatively modest rewards, he has continued to work with computers to the present day. He has been engaged at various times in programming, systems design, consultancy, and the management of the implementation of projects of considerable complexity.
Horton has many years of experience in the design and implementation of computer systems applied to engineering design and to manufacturing operations in a variety of industries. He has considerable experience developing occasionally useful applications in a wide variety of programming languages, and teaching primarily scientists and engineers to do likewise. He has been writing books on programming for more than 10 years now, and his currently published works include tutorials on C, C++, and Java. At the present time, when he is not writing programming books or providing advice to others, he spends his time fishing, traveling, and trying to speak better French.
Inside This Book(Learn More)
Top Customer Reviews
Most Helpful Customer Reviews on Amazon.com (beta)
Not that the above observation has anything to do with "Ivor Horton's Beginning Visual C++ 2008"; I just felt the urge to pass along that opinion in case the reader of this review has not yet decided whether to start learning C++ or C#.
For those who are interested in learning C++ for use with Windows, I can recommend this book. It is well written and covers everything you need to know to get started. In fact, at 1356 pages (not 1392, as currently listed at Amazon) it covers much more than most people need to know.
In Visual Studio 2005, and continuing in Visual Studio 2008, Microsoft introduced a new dialect of C++ called C++/CLI. The great advantage of C++/CLI is that it allows you to integrate "managed" programming (programs that run on the .Net Framework) and "unmanaged" or "native" programming. This is a unique ability of C++/CLI, and for this kind of programs C++/CLI can run circles around C#.
Ivor Horton's book provides a good introduction to C++/CLI, with most chapters being divided into two parts; the first part about classical (ANSI/ISO) C++ and the second part about C++/CLI. However, as a beginner's book, it does not get into the really exciting managed/unmanaged "interop" parts of C++/CLI. For that you will need a more advanced book, for example Expert Visual C++/CLI: .NET for Visual C++ Programmers (Expert's Voice in .Net) - and some experience in creating both managed and unmanaged programs.
On the other hand, if C++/CLI is of no interest to you, then you can easily ignore those parts of the book.
Turning to more general comments, this book is well written and does a good job of describing all of the (sometimes messy) details about C++. There are many programming examples, all meticulously explained. The source code for the examples is available on the publisher's web site. There is even an online service - at one point I mistakenly thought I'd found a bug in one of the examples and I reported it as errata. In response I received a kind message from Mr. Horton himself telling me why I was wrong.
I liked the occasionally humorous tone of the book too, and was especially intrigued by Mr. Horton's reference to a book called "Paneless Programming" from 1981.
There are no major negative aspects, but I did find the fairly large number of typos somewhat irritating. Another surprising experience was that the index, although huge at 38 pages, was missing obvious entries such as "enum" and "typedef". Occasionally material was presented in a slightly illogical way, being (prematurely?) mentioned briefly in one chapter and then finally described properly in a later chapter.
As mentioned by other reviewers, in order to do the MFC parts of the book you need to have access to one of the non-free versions of Microsoft Visual Studio 2008.
This is a very good introductory book about C++ and C++/CLI for Visual Studio 2008.
First of all, the book is written for the IDE(s) provided and not the other way round. This book covers the ISO/ANSI standard C++ and the Microsoft extension C++/CLI, together with the Standard Template Library, in the first 11 chapters. Windows Programming is introduced in Chapter 12 and covers both MFC and Windows Forms.
Now, if you want to go down the traditional game Programming route, then Win32 and Standard C++ is what you will need, together with DirectX or OpenGL at a later stage. The book covers all the C++ you will need for that. However, should you want something for business applications, together with a graphics capability and a rich GUI, then that is covered also with Windows Forms and, although I have never used it, presumably Visual Studio Express is perfectly adequate for this exercise.
A problem emerges if you have used and want to continue using MFC, since these classes are not part of the Express version. Presumably, Microsoft considered that those who would want to use MFC have done so in previous versions of Visual Studio and would simply upgrade to, at least, the 2008 Standard version.
The fact remains, however, that this book covers Windows Forms, and all that you could do with the MFC can be done as well, if not a lot better, with Forms. And since the Express version contains Windows Forms, it is difficult to imagine there being any problem with reaching project objectives.
Having said that, I would like to conclude by saying that this is a truly excellent work, and it is very difficult to see how this beginning text could be improved upon, even by Wrox standards.
Overall the book is well written and clear to understand. As the title indicates it is pitched at the beginner market. However, its primary flaw is that it tries to deliver too much for a single text. With plenty of excellent ANSI C++ references on the market, it is a mystery to me as to why the author tries to cram two books into the one volume. The end result is that both sections of the book do not go into as much detail as they could.
ANSI C++ is currently undergoing a very major revision and the standard will soon include regular expressions, smart pointers, hash tables and random number generators. These are not by any means "advanced" features of the language and I feel that any C++ book written from 2008 onwards should include at least a brief reference to what will shortly become a core component of the language. The MFC component feels similarly dated in that it does not include coverage of ribbon elements, docking toolbars, tabbed documents and so forth.
I have not read any of the previous "Beginning Visual C++" volumes by Horton but it feels as if he has simply tacked on small, incremental changes as each new release of Visual C++ has come out rather than making the broad sweeping changes necessary to do justice to some of the new feature sets discussed above. Nonetheless I would still recommend the purchase of this book for beginners who have absolutely so C++ experience at all.
I do have one significant criticism. The book is almost 1400 pages long, and that is just too long to be convenient to handle. I would have preferred to have it be in the form of two volumes, Volume 1 being devoted to the C++ language and Volume 2 being devoted to the applications. I just find it to be physically awkward to read a 1400-page book.
Addendum as of 14 Feb 2010:
I have been using this book extensively now, and I'd like to add to my previous comments. This book covers a number of topics, the Integrated Development Environment(IDE), the C++ language, the Microsoft Foundation Classes (MFC) and the Common Language Runtime (CLR) for creating programs to run in the Windows environment. Each one of these topics is huge. Horton tackles the problem with a number of examples, the emphasis being on the development of a program called Sketcher for drawing objects on the screen. He devoted Chapters 13 through 19 to this program. He develops two versions of Sketcher, one illustrating the use of the MFC and the other the use of the CLR, the emphasis being heavily on the MFC. I developed the MFC version. The final version of Sketcher is a complicated program.
If you've ever followed a book to develop a program, you know that you will have bugs your program, and that it's important when you're trying to fix those bugs to be able to have confidence that the author's instructions are OK. I can tell you with certainty that you can count on Horton's being correct. If you truly follow his instructions, step by step as he describes, your version of Sketcher will compile and run OK. I recommend that, after you successfully complete the version in each chapter, you save it as something like SketcherCh13, SketcherCh14, etc. so that you'll have a good starting point for trying to sort out where you went wrong in each chapter. It is an amazing book.
I am, by no means now an accomplished Windows programmer. However, I am ready to start crawling on my own. I stand by by earlier comments.
Can't give it 5 stars though, as there is little information on how to manage the memory layout of complex object hierarchies: eg pros and cons of different ways to embed subobjects (eg. should I use a pointer, reference, or an array to define a member variable?) and how to reclaim memory etc. Granted, this is a beginner's book, but IMO, a solid understanding of memory layout is essential for beginners. Too many people (esp in the C# and Java world) jump into coding for a large set of classes without fully understanding how different objects work together at runtime.
Look for similar items by category
- Books > Computers & Technology > Programming > C > Tutorials
- Books > Computers & Technology > Programming > Languages & Tools
- Books > Computers & Technology > Programming > Software Design, Testing & Engineering > Object-Oriented Design
- Books > Computers & Technology > Programming > Software Design, Testing & Engineering > Software Development
- Books > Textbooks > Computer Science & Information Systems > Programming Languages
- Books > Textbooks > Computer Science & Information Systems > Software Design & Engineering