NDAB12005U Programming in C++ (C++)

Volume 2013/2014
Content
The course will give an introduction to the programming language C++. The introduction will contain some theory combined with practical exercises such that students who have some programming experience from other programming languages will be able to analyze, construct and maintain C++ programs.

Content:
  • Simple types: numbers, arrays, pointers, and structs.
  • Syntax for simple declarations, expressions, and statements.
  • Input and output.
  • Overloaded functions and operators.
  • Memory allocation/ deallocation on stacks and heaps.
  • Scope rules.
  • Exceptions.
  • Templates and generic programming.
  • Classes and objects.
  • Simple and multiple inheritance.
  • Standard template library.
Learning Outcome
After finishing the course the students should

Knowledge
  • have an understanding of the programming language C++
  • have an understanding of simple declarations, expressions, and statements.
Skills
  • be able to explain memory allocation/ deallocation on stacks and heaps.
  • be able to explain scope rules.
  • be able to explain simple templates.
  • be able to explain simple and multiple inheritance.

Competences
  • be able to explain and use a broad variety of the language constructions in C++ to develop non-trivial programs.
  • be able to use simple types like: numbers, arrays, pointers, and structs.
  • be able to handle input and output.
  • be able to use functions and operators.
  • be able to explain and use exceptions.
  • be able to use the standard template library.
See Absalon when the course is set up.
Students who attend the course are expected to have some programming experience with an imperative language, e.g. Java, Python, C, or Pascal. This course is not an introductory course in programming.
Lectures and practical exercises.
  • Category
  • Hours
  • Exam
  • 15
  • Lectures
  • 20
  • Practical exercises
  • 15
  • Preparation
  • 19
  • Total
  • 69
Credit
2,5 ECTS
Type of assessment
Written assignment, 5 days
The exam is a ‘take home’ programming exercise. The assignment is handed out the last day of the course and must be handed in 5 working days later.
Marking scale
passed/not passed
Censorship form
No external censorship
One internal examiner
Criteria for exam assesment
See learning outcome.