Title:

The C++ Programming Language

Code:ICP
Ac.Year:2017/2018
Term:Summer
Curriculums:
ProgrammeFieldYearDuty
IT-BC-3BIT2ndCompulsory-Elective - group T
Language of Instruction:Czech
Public info:http://www.fit.vutbr.cz/study/courses/ICP/public/
Credits:4
Completion:credit
Type of
instruction:
Hour/semLecturesSeminar
Exercises
Laboratory
Exercises
Computer
Exercises
Other
Hours:0260013
 ExamsTestsExercisesLaboratoriesOther
Points:0000100
Guarantor:Peringer Petr, Dr. Ing. (DITS)
Lecturer:Peringer Petr, Dr. Ing. (DITS)
Instructor:Janoušek Vladimír, doc. Ing., Ph.D. (DITS)
Peringer Petr, Dr. Ing. (DITS)
Faculty:Faculty of Information Technology BUT
Department:Department of Intelligent Systems FIT BUT
Prerequisites: 
The C Programming Language (IJC), DITS
 
Learning objectives:
  The goal is to introduce students to object-oriented programming in C++ language and to generic programming using templates.
Description:
  ISO C++ language overview. Objects, classes, inheritance, polymorphism. Operator and function overloading. Templates. Exceptions. Standard library, STL.
Learning outcomes and competences:
  Students are able to exploit C++ for creating middle-sized applications based on the object-oriented approach and generic programming concepts.
Syllabus of lectures:
 
  1. Introduction. Basic overview of ISO C++. Examples of C++ use.
  2. Basic differences of C and C++. Declarations, definitions, namespaces. Types.
  3. Statements and operators of C++. The terminology and principles of object-oriented programming in C++.
  4. Objects, classes, class members. Member access control. Member functions, "this" keyword, static members.
  5. Object creation and destruction: constructors, destructors, operators new and delete.
  6. Function and operator overloading. Type conversion operators.
  7. Input/output (iostream, fstream). Output formatting, file streams and string streams.
  8. Inheritance, base and derived classes. Multiple inheritance, virtual base classes.
  9. Polymorphism, virtual methods, abstract classes. Runtime type information.
  10. Templates, (partial) specialization.
  11. Standard library, algorithms, iterators, containers, function objects.
  12. Exceptions, exception specifications.
  13. Library overview. Effective C++ programming.
Syllabus - others, projects and individual work of students:
 
  • project
Fundamental literature:
 
  • Stroustrup, B.: The C++ programming language, 4th edition, Addison-Wesley, 2014
  • Booch, G.: Object-Oriented Design with applications, 2nd edition, The Benjamin/Cummings Publishing Company 1994
  • ISO: Programming languages - C++, International Standard ISO/IEC 14882, 1998 
  • ISO: Working Draft, Standard for Programming Language C++ (N4659). 2017-03-21
Study literature:
 
  • ISO: Working Draft, Standard for Programming Language C++ (N4659). 2017-03-21 [available online on WWW]
  • Teaching materials available on WWW.
 

Your IPv4 address: 54.198.23.251
Switch to IPv6 connection

DNSSEC [dnssec]