26 February 2015 to 12 March 2015
Europe/Rome timezone

Scientific Programme

Introduction to C++ - Online seminar

Introduction

C++ and programming paradigms, C++ standard evolution, compilers (open source and commercial), C++ in Astronomy, on-line references and books, Integrated Development Environments.

Basic program building blocks

The main function, include directives, constants and variables, built-in data types, numerical, character and string literals, expressions and operators, promotion and cast, C++ standard strings, input/output, the auto type specifier and type aliases.

Control structures

Statements and blocks, variable scope, conditional structure (if-else), looping and counting (while, for, range-for), break and continue statements, selective structure (switch-case), C++ standard vectors.

Organizing computation

Functions, references, pass by value and pass by reference, use of const, function overloading, recursions, exception handling, standard containers (vector, list, map), iterators, standard algorithms, template functions, lambda functions.

Organizing data and computation

Struct type, classes, attributes, member functions, const member functions, protection labels, constructors, destructor, assignment operator, static attributes and methods, inheritance, abstract classes, polimorphism.

Memory management

Pointers, function pointers, C arrays, memory allocation and deallocation, smart pointers (shared and unique pointers).