- Book Name: Moving From C to C++ Discussing Programming Problems Why They Exist
- Pages: 1090
- Size: 4 MB
Moving From C to C++ by Arunesh Goyal PDF
Contents of Moving From C to C++ by Arunesh Goyal PDF
- Chapter 1: Introduction to Objects
- Chapter 2: Making and Using Objects
- Chapter 3: The C in C++
- Chapter 4: Data Abstraction
- Chapter 5: Hiding the Implementation
- Chapter 6: Initialization and Cleanup
- Chapter 7: Function Overloading and Default Arguments
- Chapter 8: Constants
- Chapter 9: Inline Functions
- Chapter 10: Name Control
- Chapter 11: References and the Copy Constructor
- Chapter 12: Operator Overloading
- Chapter 13: Dynamic Object Creation
- Chapter 14: Inheritance and Composition
- Chapter 15: Polymorphism and Virtual Functions
- Chapter 16: Introduction to Templates
- Chapter 17: Exception Handling
- Chapter 18: Strings in Depth
- Chapter 19: iostreams
- Chapter 20: Runtime Type Identification (RTTI)
- Chapter 21: Multiple Inheritance (MI)
Preface to Moving From C to C++ by Arunesh Goyal PDF
Like any human language, C++ provides a way to express concepts. If successful, this medium of expression is significantly easier and more flexible than the alternatives as problems grow larger and more complex. However, you can’t just look at C++ as a collection of features; some of the features make no sense in isolation. You can only use the sum of the parts if you are thinking about design, not simply coding.
And to understand C++ this way, you must understand the problems with C—and with programming in general. This book discusses programming problems, why they are problems, and the approach C++ has taken to solve such problems. Thus, the set of features I explain in each chapter is based on the way that I see a particular type of problem being solved with the language.
In this way I hope to move you, a little at a time, from understanding C to the point where the C++ mindset becomes your native tongue. Throughout, I’ll be taking the attitude that you want to build a model in your head that allows you to understand the language all the way down to the bare metal; if you encounter a puzzle, you’ll be able to feed it to your model and deduce the answer.
I will try to convey to you the insights that have made me start “Moving from C to C++”.
I have decided to assume that someone else has taught you C and that you have at least a reading level of comfort with it. My primary focus is on simplifying what I find difficult: the C++ language. Although I have added a chapter that is a rapid introduction to C, I am still assuming that you already have some kind of programming experience.
In addition, just as you learn many new words intuitively by seeing them from their context in a novel, it’s possible to learn a great deal about C from the context in which it is used in the rest of the book.
I clawed my way into C++ from exactly the same position I expect many of the readers of this book are in: as a programmer with a very no-nonsense, nuts-andbolts attitude about programming.
I discovered later that I wasn’t even a very good C programmer, hiding my ignorance of structures, malloc() and free(), setjmp() and longjmp(), and other “sophisticated” concepts, scuttling away in shame when the subjects came up in conversation instead of reaching out for new knowledge.
Moving from c to c++ by arunesh goyal pdf.