The introduction to C++ is a series of articles to teach C++ and java called “Objective Viewpoint”. The articles are published in the XRDS formally Crossroads, “The ACM Student Magazine” published quarterly, both in print and online for ACM student members.

The goal of these columns is to explore object-orientation through practical object-oriented programming. This time, we look at C++, but in the future we will explore other areas of object-orientation. Learning an object-oriented language-a whole new way of programming-will pave the way for many exciting topics down the road.

The C++ course covers the following topics.

1. An Introduction to C++

The tutorial touch on many aspects of object-orientation. The word object has surfaced in more ways than you can count. There are OOPLs (Object-Oriented Programming Languages) and OODBs (Object-Oriented Databases), OOA (object-oriented analysis), and OOD (object-oriented design). We are sure you can come up with some OOisms of your own.

2. Object-Orientation and C++ Part I and II

Object-orientation is a truly powerful and elegant way of developing software systems. Languages such as C++ make it possible to develop systems using the object-oriented paradigm, making it possible to design our software while maintaining a real world view of the system.

3. The ABCs of Writing C++ Classes: Constructors, Destructors, and Assignment Operators

This article provides 20 guidelines that will prove useful to you as you implement your own classes. We will begin with the special member functions of a class: constructors, destructors, and assignment operators.

4. Getting the Handle of Handles

Classes which have a pointer to another class which contains the actual implementation are called handle classes. When a handle object receives a message to perform one of its operations, the message is forwarded to the rep for actual processing

5. An Overview of the Standard Template Library

The Standard Template Library (STL) provides C++ programmers with a library of common data structures — linked lists, vectors, deques, sets, and maps — and a set of fundamental algorithms that operate on them.

6. Schizophrenia for C++ Programmers

Statics have their place in C++ programs. The static keyword is one of those constructs of C++ that takes on multiple meanings. This article provides some insights and helps conquer their schizophrenic personality

7. Casting in C++: Bring Safety and Smartness to Your Programs

Casting is used to convert one type of objects, expression, function argument or return value to another type. These conversions can happen automatically or programmer has to explicitly instruction compiler to cast the type.

8. A Cornucopia of C++ Resources

As C++ has tons of different features and constructs so it’s impossible for a programmer to remember all of them. This article lists down books, newsletters, journals, magazines and online resources.