Russel Lopez is a Business Systems Analyst and programmer with Vertical Market Software. You may reach him at 614-274-8575 or CompuServe 71620,1142.
Is C++ a better C? If you are an experienced C programmer and have been wondering if C++ is really for you, this book may hold the answer. This easy-to-read book is written in an informal, conversational style and is not intimidating to would-be C++ programmers. It is also suitable material for seminars. While his explanations are terse, C programmers will appreciate Jaeschke's direct approach, separating fact from fiction.
The Target Audience
C++ programmers can be divided into two groups: those who will use C++ simply as a better C, and those who will develop libraries for other programmers. As the title implies, this book emphasizes the first group only. (Few C++ programmers will design their own class libraries, and fewer novice C++ programmers will attempt to do so.)Unlike many books on C++ programming that try to cover the entire language for all levels of readers, this book will not overwhelm new programmers. Jaeschke believes that you can write a large amount of C++ code without using or knowing all of C++. As he points out, "you must first learn how to use classes before you are good at designing them."
By limiting the scope of topics to the essentials, Jaeschke gets novice C++ programmer up and running immediately. Readers learn to create their first C++ program on page 4, using insertion, overloaded operators, and extraction.
Learning from C
In this book, Jaeschke assumes that by using previous C programming experience as a foundation, you can quickly learn and implement C++ skills. He continuously compares and contrasts C++ with C, illustrating each topic with a simple example. Jaeschke's illustrations and examples have been tested with eight popular C++ compilers; I tested some examples with MS C/C++ 7.0 and BC 3.1 and had no problems.For teaching purposes, Jaeschke treats C++ as a mere enhancement of C; but in reality, C++ is more than just a superset of C. In fact, Jaeschke acknowledges that most C programmers who learn about C++ will probably consider it a different language than C, and not necessarily the next language they want to learn. He further acknowledges C and C++ as two separate languages by mentioning that C and C++ standards are being addressed by different standards committees, and that both are still evolving.
Organization
The first part of the book explains the useful additions and enhancements that C++ makes to C; it does not include object-oriented programming. Part II gives you the minimum information you need to use existing (and hopefully well-documented) class functions, and illustrates the use of the Standard C+ + I/0 library. Part III presents a walk-through design and creation of a simple class. The logical progression from Part II to Part III will help you understand how classes work. This understanding will be helpful to you even if you never wish to create your own classes.The Appendix provides a C++ keyword list, notes on compatibility with older C++ releases, a summary of C and C++ compatibility issues, and worked-out solutions to the exercises. The Appendix also provides an extensive list of recommended reading, for readers wanting more in-depth information about C++.
What's Missing
In his efforts to cut his book down to bare essentials, Jaeschke seems to have gone a bit too far; he excludes a detailed discussion of inheritance, polymorphism, templates, and exception handling, even though these topics are central to C++ programming. In this book, the complete discussion comprises only about a single page. In fairness, Rex Jaeschke does point the reader to additional books by several other well known authors, including Bjarne Stroustrup's The C++ Programming Language, 2nd edition, for comprehensive and thorough discussion of advanced topics.I recommend this book to all C programmers who want a concise, inside story on C++, devoid of media hype. By reading this book, you can get started in C++ without investing a large amount of time or money. Rex Jaeschke's skill and personal experience as a teacher and seminar leader are obvious and well demonstrated in this book.
Title: C++: An Introduction for Experienced C Programmers
Author: Rex Jaeschke
Publisher: CBM Books
240 pages
Price: $30.00
ISBN: 1-878956-27-2