Book: Absolute C++
Publisher: Addison Wesley
Absolute C++ , offers complete coverage of the C++ programming language. It provides all the tools necessary for experienced and novice programmers to master C++, including: thorough coverage of the Standard Template Library; complete and fully executable code throughout; sections highlighting programming tips and common pitfalls; and a logical order of coverage of C++ topics in order for students to better understand the language. This book is appropriate for introductory courses covering the C++ language, intermediate programming courses introducing C++ to students familiar with another language and will act as a total reference beyond a student's coursework.
Object-oriented programming (OOP) is a currently popular and powerful programming
technique. The main characteristics of OOP are encapsulation, inheritance, and
polymorphism. Encapsulation is a form of information hiding or abstraction. Inheritance
has to do with writing reusable code. Polymorphism refers to a way that a single
name can have multiple meanings in the context of inheritance. Having made those
statements, we must admit that they will hold little meaning for readers who have not
heard of OOP before. However, we will describe all these terms in detail later in this
book. C++ accommodates OOP by providing classes, a kind of data type combining
both data and algorithms. C++ is not what some authorities would call a “pure OOP
language.” C++ tempers its OOP features with concerns for efficiency and what some
might call “practicality.” This combination has made C++ currently the most widely
used OOP language, although not all of its usage strictly follows the OOP philosophy.