Må vi gemme en cookie?

Vi bruger cookies for at forbedre din oplevelse af vores hjemmeside, målrette indhold samt statistik. Læs mere om cookies

Kurser

Kursusadministration

Brug for hjælp?

  • Gregersensvej 8
  • 2630 Taastrup
Google MapsApple MapsRejseplanen
  • Forskerparken Fyn, Forskerparken 10F
  • 5230 Odense M
Google MapsApple MapsRejseplanen
  • Teknologiparken Kongsvang Allé 29
  • 8000 Aarhus C
Google MapsApple MapsRejseplanen
  • NordsøcentretPostboks 104
  • 9850Hirtshals
Google MapsApple MapsRejseplanen
  • Gammel Ålbovej 1
  • 6092Sønder Stenderup
Google MapsApple MapsRejseplanen

C++ Programming

Kom hurtigt i gang med programmering i C++. På dette kursus lærer du at udvikle C++ programmer og hvordan du implementerer objektorienterede koncepter i C++. Du forventes at have programmeringserfaring fra et andet sprog, men ikke nødvendigvis erfaring med OO. Undervisningen foregår på engelsk.

Prerequisites

  • At least 6 months programming experience
  • No OO experience is assumed

Targit audience

This course is aimed for students who want to learn programming in C++.

Outcome

  • Understanding C++ types, variables, and operators
  • Using C++ flow-of-control constructs
  • Writing and calling functions
  • Using pointers, arrays, and structures
  • Defining classes and creating objects
  • Implementing operators and conversions
  • Using inheritance and polymorphism effectively

Content

Introduction to C++
  • Key features of C++
  • Defining variables
  • Formulating expressions and statements
  • Built-in data types
  • Console input/output
Operators and Types
  • Assignment
  • Compound Assignment
  • Increment and decrement operators
  • Const declarations
  • Type conversions
Going Further with Data Types
  • Enumerations
  • Arrays
  • Using the standard vector class
  • Using the standard string class
  • Structures
Flow of Control
  • Decision making with if, if-else, and switch
  • Looping with for loops, while loops, and do-while loops
Defining functions
  • Declaring, calling and defining functions
  • Function overloading
  • Defining default arguments
  • Pass-by-copy versus pass-by-reference
  • Defining inline functions
  • Header files and source files
Pointers
  • Overview of pointers
  • Defining pointers
  • Dereferencing pointers
  • Const pointers
  • Null pointers
Overview of Object Oriented Concepts
  • Classes and objects
  • Abstraction
  • Encapsulation
  • Inheritance and polymorphism
Defining Classes
  • Syntax of class declarations
  • Public and private members
  • Creating objects
  • Using new and delete
  • Structures vs. classes
Implementing Class Functionality
  • Function overloading
  • Default arguments
  • Anonymous arguments
  • Ambiguities
  • Resolving scope conflicts
  • Using the this pointer
Defining Constructors and Destructors
  • Overview of an object's lifetime
  • Defining constructors
  • Constructor chaining
  • Defining destructors
Operator Overloading
  • Overview of operator functions
  • Defining unary operators
  • Defining binary operators
  • Defining the [] operator
  • Defining input and output operators
Defining Class-Wide Members
  • Overview
  • Static data members
  • Static member functions
  • Nested types
  • Friend classes
Creating Collections of Objects
  • The need for collections
  • Introduction to template classes
  • Using vector and list
  • Using iterators
  • Introduction to template functions
  • Using the Standard Template Library
Copying and Conversions
  • The copy assignment operator
  • Copy constructors
  • Conversions to a class
  • Conversions from a class
Inheritance
  • Recap of inheritance principles
  • Defining a subclass
  • Defining protected members
  • Scoping and initialisation
  • Multiple inheritance
  • Abstract base classes
Polymorphism
  • Recap of polymorphism
  • Defining virtual functions
  • Virtual destructors
  • Pure virtual functions and abstract classes

Next course

Please contact us if you are interested in C++ Advanced programming or take a look at Modern C++ Development.

Instructor

Andy Olsen
Andy is a freelance instructor and consultant based in the UK, with more than 30 years experience in the industry across a wide range of technologies and platforms. Andy began his professional career in C and migrated through C++, Java, .NET and other languages and toolsets as the years passed by. Andy is currently actively involved in contemporary systems development techniques including microservice architecture, cloud-based systems, and containerization.

Har du faglige spørgsmål, så kontakt:
Andre kigger også på