The C++ Language Tutorial - The C++ ...

C++ Language Tutorial
Written by: Juan Souli¨¦
Last revision: June, 2007
Available online at:
The online version is constantly revised and may contain corrections and changes
The C++ Language Tutorial
This document and its content is copyright of ? , 2008. All rights reserved.
Any redistribution or reproduction of part or all of the content in any form is prohibited other than to print a
personal copy of the entire document or download it to a local hard disk, without modifying its content in any way
(including, but not limited to, this copyright notice).
You may not, except with express written permission from , distribute the content of this document.
Nor may you transmit it or store it in any other website or other form of electronic retrieval system.
2
? 2008. All rights reserved
The C++ Language Tutorial
Table of contents
Table of contents ...............................................................................................................................3
Introduction ......................................................................................................................................5
Instructions for use ................................................................................................................................... 5
Basics of C++ ......................................................................................................................................7
Structure of a program ............................................................................................................................. 7
Variables. Data Types. ............................................................................................................................. 11
Constants ................................................................................................................................................ 17
Operators ................................................................................................................................................ 21
Basic Input/Output.................................................................................................................................. 29
Control Structures ............................................................................................................................ 34
Control Structures ................................................................................................................................... 34
Functions (I) ............................................................................................................................................ 41
Functions (II) ........................................................................................................................................... 47
Compound data types ...................................................................................................................... 54
Arrays ...................................................................................................................................................... 54
Character Sequences .............................................................................................................................. 60
Pointers ................................................................................................................................................... 63
Dynamic Memory.................................................................................................................................... 74
Data structures........................................................................................................................................ 77
Other Data Types .................................................................................................................................... 82
Object Oriented Programming.......................................................................................................... 86
Classes (I)................................................................................................................................................. 86
Classes (II) ............................................................................................................................................... 95
Friendship and inheritance ................................................................................................................... 100
Polymorphism ....................................................................................................................................... 107
Advanced concepts ........................................................................................................................ 113
Templates.............................................................................................................................................. 113
Namespaces .......................................................................................................................................... 120
Exceptions ............................................................................................................................................. 123
Type Casting .......................................................................................................................................... 127
3
? 2008. All rights reserved
The C++ Language Tutorial
Preprocessor directives......................................................................................................................... 133
C++ Standard Library ...................................................................................................................... 138
Input/Output with files ......................................................................................................................... 138
4
? 2008. All rights reserved
The C++ Language Tutorial
Introduction
Instructions for use
To whom is this tutorial directed?
This tutorial is for those people who want to learn programming in C++ and do not necessarily have any previous
knowledge of other programming languages. Of course any knowledge of other programming languages or any
general computer skill can be useful to better understand this tutorial, although it is not essential.
It is also suitable for those who need a little update on the new features the language has acquired from the latest
standards.
If you are familiar with the C language, you can take the first 3 parts of this tutorial as a review of concepts, since
they mainly explain the C part of C++. There are slight differences in the C++ syntax for some C features, so I
recommend you its reading anyway.
The 4th part describes object-oriented programming.
The 5th part mostly describes the new features introduced by ANSI-C++ standard.
Structure of this tutorial
The tutorial is divided in 6 parts and each part is divided on its turn into different sections covering a topic each
one. You can access any section directly from the section index available on the left side bar, or begin the tutorial
from any point and follow the links at the bottom of each section.
Many sections include examples that describe the use of the newly acquired knowledge in the chapter. It is
recommended to read these examples and to be able to understand each of the code lines that constitute it before
passing to the next chapter.
A good way to gain experience with a programming language is by modifying and adding new functionalities on
your own to the example programs that you fully understand. Don't be scared to modify the examples provided
with this tutorial, that's the way to learn!
Compatibility Notes
The ANSI-C++ standard acceptation as an international standard is relatively recent. It was first published in
November 1997, and revised in 2003. Nevertheless, the C++ language exists from a long time before (1980s).
Therefore there are many compilers which do not support all the new capabilities included in ANSI-C++, especially
those released prior to the publication of the standard.
This tutorial is thought to be followed with modern compilers that support -at least on some degree- ANSI-C++
specifications. I encourage you to get one if yours is not adapted. There are many options, both commercial and
free.
Compilers
The examples included in this tutorial are all console programs. That means they use text to communicate with
the user and to show their results.
5
? 2008. All rights reserved
................
................
In order to avoid copyright disputes, this page is only a partial summary.
To fulfill the demand for quickly locating and searching documents.
It is intelligent file search solution for home and business.
Related download
- c language reference manual
- programming and problem solving through c language
- c programming tutorial
- 242 30 arrays made easy an introduction to arrays and
- c programming absolute beginner s guide
- programming in ansi c
- computer applications 86
- c primer plus fifth edition university of cincinnati
- the c language tutorial the c
- using the gnu compiler collection
Related searches
- c language memory management
- java programming language tutorial pdf
- c language standard
- latest c language standard
- c language int to string
- c language basics pdf download
- c language array of strings
- c language string array
- c language books free download
- the c programming language brian kernighan
- c language main function
- c language function syntax