Free reference and learning material for everyone who wishes to learn C and C++.
C/C++ Keywords
C/C++ Keywords
Display all entries for C/C++ Keywords on one page, or view entries individually:
asm
insert an assembly instruction
auto
declare a local variable
bool
declare a boolean variable
break
break out of a loop
case
a block of code in a switch statement
catch
handles exceptions from throw
char
declare a character variable
class
declare a class
Display all entries for C/C++ Keywords on one page, or view entries individually:
asm
insert an assembly instruction
auto
declare a local variable
bool
declare a boolean variable
break
break out of a loop
case
a block of code in a switch statement
catch
handles exceptions from throw
char
declare a character variable
class
declare a class
All C++ Functions
All C++ Functions
Bitset Constructors (C++ Bitsets)
create new bitsets
Bitset Operators (C++ Bitsets)
compare and assign bitsets
Vector constructors
create vectors and initialize them with some data
Container constructors (C++ Double-ended Queues)
create containers and initialize them with some data
Container constructors (C++ Lists)
create containers and initialize them with some data
Container constructors & destructors (C++ Sets)
default methods to allocate, copy, and deallocate containers
Container constructors & destructors (C++ Multisets)
default methods to allocate, copy, and deallocate multisets
Map constructors & destructors (C++ Maps)
default methods to allocate, copy, and deallocate maps
Multimap constructors & destructors (C++ Multimaps)
default methods to allocate, copy, and deallocate containers
Container operators (C++ Lists)
Bitset Constructors (C++ Bitsets)
create new bitsets
Bitset Operators (C++ Bitsets)
compare and assign bitsets
Vector constructors
create vectors and initialize them with some data
Container constructors (C++ Double-ended Queues)
create containers and initialize them with some data
Container constructors (C++ Lists)
create containers and initialize them with some data
Container constructors & destructors (C++ Sets)
default methods to allocate, copy, and deallocate containers
Container constructors & destructors (C++ Multisets)
default methods to allocate, copy, and deallocate multisets
Map constructors & destructors (C++ Maps)
default methods to allocate, copy, and deallocate maps
Multimap constructors & destructors (C++ Multimaps)
default methods to allocate, copy, and deallocate containers
Container operators (C++ Lists)
History of C++
During the 60s, while computers were still in an early stage of development, many new programming languages appeared. Among them, ALGOL 60, was developed as an alternative to FORTRAN but taking from it some concepts of structured programming which would later inspire most procedural languages, such as CPL and its succesors (like C++). ALGOL 68 also directly influenced the development of data types in C. Nevertheless ALGOL was an non-specific language and its abstraction made it impractical to solve most commercial tasks.
In 1963 the CPL (Combined Programming language) appeared with the idea of being more specific for concrete programming tasks of that time than ALGOL or FORTRAN. Nevertheless this same specificity made it a big language and, therefore, difficult to learn and implement.
In 1967, Martin Richards developed the BCPL (Basic Combined Programming Language), that signified a simplification of CPL but kept most important features the language offered. Although it too was an abstract and somewhat large language.
In 1963 the CPL (Combined Programming language) appeared with the idea of being more specific for concrete programming tasks of that time than ALGOL or FORTRAN. Nevertheless this same specificity made it a big language and, therefore, difficult to learn and implement.
In 1967, Martin Richards developed the BCPL (Basic Combined Programming Language), that signified a simplification of CPL but kept most important features the language offered. Although it too was an abstract and somewhat large language.
C++ Language FAQ
Frequently Asked Questions
What is C++?
C++ is a programming language. It literally means "increased C", reflecting its nature as an evolution of the C language.
Is it necessary to already know another programming language before learning C++?
Not necessarily. C++ is a simple and clear language in its expressions. It is true that a piece of code written with C++ may be seen by a stranger of programming a bit more cryptic than some other languages due to the intensive use of special characters ({}[]*&!...), but once one knows the meaning of such characters it can be even more schematic and clear than other languages that rely more on English words.Also, the simplification of the input/output interface of C++ in comparison to C and the incorporation of the standard template library in the language, makes the communication and manipulation of data in a program written in C++ as simple as in other languages, without losing the power it offers.[dl]
How can I learn C++?
What is C++?
C++ is a programming language. It literally means "increased C", reflecting its nature as an evolution of the C language.
Is it necessary to already know another programming language before learning C++?
Not necessarily. C++ is a simple and clear language in its expressions. It is true that a piece of code written with C++ may be seen by a stranger of programming a bit more cryptic than some other languages due to the intensive use of special characters ({}[]*&!...), but once one knows the meaning of such characters it can be even more schematic and clear than other languages that rely more on English words.Also, the simplification of the input/output interface of C++ in comparison to C and the incorporation of the standard template library in the language, makes the communication and manipulation of data in a program written in C++ as simple as in other languages, without losing the power it offers.[dl]
How can I learn C++?
A brief description
ProgramsNowadays computers are able to perform many different tasks, from simple mathematical operations to sophisticated animated simulations. But the computer does not create these these tasks by itself, these are performed following a series of predefined instructions that conform what we call a program.
A computer does not have enough creativity to make tasks which it has not been programmed for, so it can only follow the instructions of programs which it has been programmed to run. Those in charge of generating programs so that the computers may perform new tasks are known as programmers or coders, who for that purpose use a programming language.
A computer does not have enough creativity to make tasks which it has not been programmed for, so it can only follow the instructions of programs which it has been programmed to run. Those in charge of generating programs so that the computers may perform new tasks are known as programmers or coders, who for that purpose use a programming language.
C++ Library Reference

The standard C++ library is a collection of functions, constants, classes, objects and templates that extends the C++ language providing basic functionality to perform several tasks, like classes to interact with the operating system, data containers, manipulators to operate with them and algorithms commonly needed.
The declarations of the different elements provided by the library are split in several files that shall be included in the code in order to have access to its components:
Input/Output Stream LibraryProvides functionality to use an abstraction called streams specially designed to perform input and output operations on sequences of character, like files or strings.This functionality is provided through several related classes, as shown in the following relationship map, with the corresponding header file names on top:
The declarations of the different elements provided by the library are split in several files that shall be included in the code in order to have access to its components:
Input/Output Stream LibraryProvides functionality to use an abstraction called streams specially designed to perform input and output operations on sequences of character, like files or strings.This functionality is provided through several related classes, as shown in the following relationship map, with the corresponding header file names on top:
SOURCE CODE
Sources
Generic Console programs
File
Description
Source
C++ Tutorial Sources
Set of simple example sources to follow the C++ Tutorial included in the documents section of this site.
Juan Soulie
Fraction
Example program to add and reduce fractions.
Abraham Ishaq
Fraction
A Fraction class that has the ability to add, subtract, multiply, divide and show various statistics of the fraction.
Daniel Pronych
Generic Console programs
File
Description
Source
C++ Tutorial Sources
Set of simple example sources to follow the C++ Tutorial included in the documents section of this site.
Juan Soulie
Fraction
Example program to add and reduce fractions.
Abraham Ishaq
Fraction
A Fraction class that has the ability to add, subtract, multiply, divide and show various statistics of the fraction.
Daniel Pronych
C++ Language Tutorial
These tutorials explain the C++ language from its basics up to the newest features of ANSI-C++, including basic concepts such as arrays or classes and advanced concepts such as polymorphism or templates. The tutorial is oriented in a practical way, with working example programs in all sections to start practicing each lesson right away.
Introduction:
Instructions for use
Basics of C++:
Structure of a program
Variables. Data Types.
Constants
Operators
Basic Input/Output
Control Structures:
Control Structures
Functions (I)
Functions (II)
Introduction:
Instructions for use
Basics of C++:
Structure of a program
Variables. Data Types.
Constants
Operators
Basic Input/Output
Control Structures:
Control Structures
Functions (I)
Functions (II)
Subscribe to:
Comments (Atom)