Hide menu

TDDD33 Programming (C++)

Lecture slides


This is slides from 2013. They are subject to change. They are not a substitution for attending. They are not a substitution for reading a book or reference. They do contain minor mistakes pointed out during lecture but not always remembered when posting slides here.

Lecture 0 2013
Course information, algorithm and problem solving introduction.
Lecture 1 2013 (2 sessions)
Basic C++: variables, types, I/O, statements.
Lecture 2 2013
Functions and recursion.
Lecture 3 2013
Streams and stream error handling.
Lecture 4 2013 (2 sessions)
Command line arguments. Standard Template Library. Lambda functions.
A multitude of solutions to lesson problems (lesson_4.cc).
Sorting an increasingly complicated container (lesson_4_extra.cc).
Seminar 1 2013
Programming paradigms and object oriented analysis.
Object orientation and class introduction.
Lecture 5 2013
Basic classes: members, constructor, destructor.
Lesson 5 object orientation code example (blackjack.cc). For reasons of simple distribution and maintenance it is written in one file. Comments indicate which parts should go to which file. From object orientation perspective the way the classes are chosen, designed and organized is important, the main program is of less importance. Refer to lesson discussions.
Lecture 6 2013
Operator overloading, no new slides. Please see lab, book and 2012 slides.
Lecture 7 2013
Inheritance and polymorphism, no new slides. Please see lab, book and 2012 slides.
Lecture 8 2013
Exceptions and basic templates, no new slides. Please see lab, book and 2012 slides.

PREVIOUS YEAR CONTENT FROM HERE ON

This is slides from 2012. They are subject to change. They are not a substitution for attending. They are not a substitution for reading a book or reference.

Lecture topics

Lecture 0
Course information, STONE, algorithm and problem solving introduction.
Lecture 1a
Assignment operator, datatypes and type conversion, I/O (formatted input) and sequence.
Lecture 1b
Continue from lecture 1a and Selection and repetition. Good-vs-bad style code-examples.
Lecture 2
Functions and recursion
Lecture 3
Stream I/O: text files, string streams, (binary files).
Lecture 4a
Arrays, pointers, dynamic arrays.
Lecture OO
Object orientation, classes, material handed out on seminar

Period break and exams in other courses.

Lecture 4b
Classes: Constructor, destructor, member variable, member function, public, private, STL.
Lecture 5
Linked lists, Pointers, Dynamic memory.
Lecture 6
Classes: Operator-overloading, copy-constructor, destructor, assignment-operator.
Lecture 7
Classes: Inheritance and polymorphism.
Lecture 8
Classes: Exceptions, templates, (namespaces).
Simple array class template (lesson 8)

Period break and exam in this course.


Page responsible: Klas Arvidsson
Last updated: 2014-01-05