Core C++ for Qt Developers Curriculum Block
Version 1.0
Types, Declarations and Definitions
- Know how to use basic types and cast between them
- Understand how to use const and mutable
- Understand the different scopes that identifiers have
- Understand how to define functions and use argument lists
- Understand how to define and use references
- Understand how to manage object creation and destruction
- Know how to define and use namespaces
- Understand how to separate code into header files and source files
Classes
- Understand member accessibility
- Know constructors, how they are used and member initialization
- Know how to write const methods const-correct classes
- Understand static methods and static member initialization
- Understand how objects are copied and assigned
Inheritance and Polymorphism
- Know how constructors and destructors are used in derived classes
- Understand how to use base class pointers
- Non-public derivation of classes
- Know virtual functions, how to define and use them
- Understand why virtual destructors are needed
- Know how to use abstract classes and implement pure virtual functions
- Understand how functions and operators can be overloaded, overridden and hidden in derived classes
- Understand issues that come up from multiple inheritance
Miscellaneous Topics
- Understand how to use templates and Qt containers
- Understand operator overloading
- Know the explicit keyword and how conversion constructors are used