Author: Bjarne Stroustrup Supported programming paradigms: procedural, object-oriented, generic. Based on on the C programming language. OOP in C++ was inspired by the Simula64 programming language. All C programs are valid C++ programs. The name of the C++ programming language is related to the incremental operator "++". How to create a C++ program: compiling to object files, linking object files to an executable version of the program.
Introduction
Functions
C++ program consists of functions. Function consists of statements. Each statement must end with the semicolon character.
Prototype vs implementation.
Function main()
Function main() is the entrypoint of an C++ application.
Variants:
- int main() {return 0;}
- void main() {return 0;}
- void main(void) {return 0;}
- int main(void) {return 0;}
Console
How to delay program and wait for the press of the key Enter: cin.get();
Printing text to console: cout << "some text"; //operator overloading: <<
Reading text from console: cin >> carrots;
How to print end line: "\n" or std::endl
Comments
One line: // comment
Multi line: /* comment */
Preprocessor directives
#include <iostream>
Includes file iostream
#define INT_MAX 32767
Replaces all INT_MAX occurences by 32767
Importing namespaces
using namespace std;
using std::count;
C++ statement
Each C++ statement must be ended with the semicolon character ;
Declaration (statement type)
This allocates memory.
Example: int carrots;
Assignment (statement type)
Example: carrots = 15;
Initialization (statement type)
int carrots = 15;
//or
int carrots (15);
Key words
return, void, int, ...
Variable
Variable is named location in the memory with its type definition.
You can get the location in the memory with the & operator.
Data types
Void
Empty set of values, cannot be used as the type of variable.
Integral
short: at least 16 bits
int: at least the same length as short (since -32768 until 32 767)
long: at least 32 bits, at least the same length as int
Floating-point
Combined data types
Operators
sizeof
Class
Class is user defined type