C++

The Core Language

Gregory Satir, Doug Brown

Publisher: O'Reilly, 1996, 207 pages

ISBN: 1-56592-116-X

Keywords: Programming

Last modified: April 25, 2021, 11:52 p.m.

C++ is an object-oriented enhancement of the C programming language and is becoming the language of choice for serious software development.

C++: The Core Language is for C programmers transitioning to C++. It's designed to get readers up to speed quickly by covering an essential subset of the language. The subset consists of features without which it's just not C++, and a handful of others that make it a reasonably useful language. You can actually use this subset (with any compiler) to get familiar with the basics of the language.

Once you understand the basics, it's time to do some programming and learn more from other books. After reading this book, you'll be better equipped to learn from a reference manual, a graphical user interface programming book, and documentation on the specific libraries you'll be using. (Take a look at our companion book, Practical C++ Programming).

C+: The Core Language includes sidebars that give overviews of all the advanced features not covered, so that readers know they exist and how they fit in. It covers features common to all C++ compilers, including those on Windows NT, Windows 85, DOS, UNIX, and Macintosh.

  1. Object-Oriented Programming with Classes
    • Object-Oriented Programming
    • Classes
  2. C++ Without Classes
    • Three to Start
    • Function Changes
    • Stricter Typing
    • Dynamic Initialization of Globals
    • Some Final Lists
  3. Abstraction with Member Functions
    • The Abstraction
    • Using a struct
    • Using a struct with Interface Functions
    • Using a Class with Member Functions
  4. Encapsulation with Access Specifiers
    • Access Specifiers
    • A Member Can Have Any Access Level
    • Unlimited Access Specifiers
    • Private Does Not Mean Invisible
    • Friend Classes
  5. Hierarchy with Composition and Derivation
    • Composition
    • Derivation
    • Chaining
  6. Better Abstraction with Constructors and Destructors
    • The Default Constructor
    • The Destructor
    • Built-in Types
    • Hierarchy and Chaining
    • Implicit Default Constructors and Destructors
    • Beyond Chaining
    • Explicit Invocation
    • Flow of Control
    • Time of Invocation
  7. Better Abstraction with new and delete
    • Dynamic Objects
    • Dynamic Arrays
    • Mixing Allocators
    • realloc()
    • Out of Memory
  8. References
    • Parameter Versus Argument
    • Passing by Value in C and C++
    • Passing by Reference in C++
    • Reference Versus Pointer
    • Returning by Reference in C++
    • Overloading: Reference Versus Value
    • Binding Problems
  9. Better Abstraction with Other Special Member Functions
    • Assignment Operator
    • Copy Constructor
    • Printing an Object
    • Summary
  10. An Example Class
    • Using an int
    • Using a Static Array
    • Using a Dynamic Array
    • Using a Reference-Counted String
    • Copy Constructor Quiz
    • Summary Table
  11. Better Hierarchy with Templates
    • Defining a Template
    • Using a Template to Define an Object
    • Careful with That Expansion, Eugene
    • Modifying Container Class Elements
  12. Polymorphism with Virtual Functions
    • Polymorphism in C
    • Virtual Functions
    • Polymorphism in C++
    • More About Virtual Functions
  13. More About Polymorphism
    • Abstract Classes
    • Derivation Decisions
    • Virtual Decisions
    • Calling Virtual Functions from Constructors and Destructors
    • Under the Hood
    • Pitfalls
  14. Implementing an Object-Oriented Design
    • Implementation Table
    • Examples
    • Is-A, Has-A
    • Defensive Implementation
  15. An Example Program
    • The String Class
    • The Rule, CwRule, and HwRule Classes
    • The Scanner Class
    • Using the Program
    • Example Code
  16. What to Study Next
    • const
    • inline
    • Constructors with Parameters
    • Member Initialization Lists
    • Efficient Copy Constructor
    • Special Member Functions
  1. C++ Operators
  2. One Problem with Returning by Value

Reviews

C++

Reviewed by Roland Buresund

Mediocre **** (4 out of 10)

Last modified: May 21, 2007, 2:56 a.m.

Tries to describe only the core of the C++ languages. Very confusing and not very well written.

Comments

There are currently no comments

New Comment

required

required (not published)

optional

required

captcha

required