The Note Context in the rightmost column is only shown in case an annotated program exists. - You can navigate to the annotated program via the annotated slide view (= 'the note context').
Constructors and single inheritance - C++11 initialization syntax. | single-1-cpp11.cc | Slide context | - | - |
Constructors and multiple inheritance. | multiple-1.cc | Slide context | - | - |
Constructors and multiple inheritance - implicit activation of default constructor in Base. | multiple-2.cc | Slide context | - | - |
Constructors and multiple inheritance - order of construction and destruction. | multiple-4.cc | Slide context | - | - |
Constructors and multiple inheritance - base classes are re-ordered. | multiple-5.cc | Slide context | - | - |
Attempting to inherit constructors - problems. | inheriting-constructors-cpp11-problems.cc | Slide context | - | - |
Attempting to inherit constructors - success. | inheriting-constructors-cpp11.cc | Slide context | - | - |
Illustration of object slicing. | slice-1.cc | Slide context | - | - |
Does this variant change the game. | slice-2.cc | Slide context | - | - |
Virtual versus non-virtual functions in an AB class hierarchy - relative to illustration on the previous slide. | virtual-1-simplified.cc | Slide context | - | - |
Base class A and derived class B with non-virtual destructors - motivation. | prog2-f15.cc | Slide context | - | - |
Base class A and derived class B with virtual destructors. | prog3.cc | Slide context | - | - |
Base class A and derived class B and C with virtual destructors. | prog4.cc | Slide context | - | - |
A class B inherits two virtual, overloaded functions from A - straightforward - no problems. | prog0.cc | Slide context | - | - |
Class B redefines one of the functions, and expects to inherit the other - problems. | prog1.cc | Slide context | - | - |
A variant were vf is a pure virtual function in class A. | pure-virtual.cc | Slide context | - | - |
A sample C# interface. | gameobject.cs | Slide context | - | - |
The C++ counterpart to the C# Interface. | interface-like-class.cc | Slide context | - | - |
A C++ class that 'implements the interface' and uses the resulting class. | interface-like-class-and-use.cc | Slide context | - | - |
Class Outer that contains class Inner - does not compile. | nested-1-f15-reorg.cpp | Slide context | - | - |
Class Outer that contains class Inner - friends of each other. | nested-2-f14.cpp | Slide context | - | - |
A variant where class Inner is private in Outer - does not compile. | nested-2a.cpp | Slide context | - | - |
Inner attempts to access to non-static variable in Outer - does not compile. | nested-3.cpp | Slide context | - | - |
Problems solved - This program compiles. | nested-3a.cpp | Slide context | - | - |
Illustration of how to prevent overriding a virtual function. | prog1.cc | Slide context | - | - |
Illustration of how to prevent overriding all virtual functions. | prog2.cc | Slide context | - | - |
Class variant of class Point with several different move functions. | point.h | Slide context | - | - |
Implementation of class Point and the tree move methods - not important for the example. | point.cc | Slide context | - | - |
A program that illustrates pointer to Point member functions. | prog.cc | Slide context | - | - |
Ambiguity - the compiler locates the problem. | amb-1.cc | Slide context | - | - |
Ambiguity resolution in the client of C. | amb-2.cc | Slide context | - | - |
Involving polomorphism - but there is a problem. | amb-3-problems.cc | Slide context | - | - |
Involving polomorphism - problem solved. | amb-3.cc | Slide context | - | - |
Illustration of replication of class A. | non-virtual-1.cc | Slide context | - | - |
Illustration of shared, virtual, base class A. | virtual-1.cc | Slide context | - | - |
Ignoring constructor in virtual base class. | virtual-problem.cc | Slide context | - | - |
Forcing use of a constructor in a virtual base class. | virtual-problem-variant.cc | Slide context | - | - |
Attempting repeated inheritance in C++. | try-repeated-inheritance.cc | Slide context | - | - |
Class D inherits privately from B and publically from C. | base-class-access-1a.cc | Slide context | - | - |
Same setup: Which variables can access which objects. | base-class-access-2.cc | Slide context | - | - |
A type parameterized variant of class Point - point.h. | point.h | Slide context | - | - |
The implementation of the template class Point - point.cc. | point.cc | Slide context | - | - |
A program that illustrate template instantiation. | prog.cc | Slide context | - | - |
A program that illustrate problematic template instantiation. | prog1.cc | Slide context | - | - |
A type parameterized variant of class Point - point.h. | point.h | Slide context | - | - |
The implementation of the template class Point - point.cc. | point.cc | Slide context | - | - |
A program that illustrate the template instantiation. | prog.cc | Slide context | - | - |
The template function compare, and various uses of it. | cmp.cc | Slide context | - | - |
Class Point with comparison operator friends. | point.h | Slide context | - | - |
The implementation of class Point. | point.cc | Slide context | - | - |
The template function compare used for Point comparison. | cmp.cc | Slide context | - | - |
Class Point parameterized with a policy class. | prog.cc | Slide context | - | - |
Four different policy classes - with type parameterized static methods. | norms.cc | Slide context | - | - |
The Point class template definition - policy parameterized. | point.h | Slide context | - | - |
Member functions in class Point. | point.cc | Slide context | - | - |
Two Point functions parameterized with a policy class. | prog.cc | Slide context | - | - |
Four different policy classes - with type parameterized static methods. | norms.cc | Slide context | - | - |
The Point class definition - not a template in this version. | point.h | Slide context | - | - |
Member functions in class Point - not essential to this example. | point.cc | Slide context | - | - |
The general class template Point followed by the specialized one. | point.h | Slide context | - | - |
The implementation of the template class Point - point.cc - nothing interesting here. | point.cc | Slide context | - | - |
A program that illustrate the instantiation of both the general and specialized template classes. | prog.cc | Slide context | - | - |
Full and partial specializations of a class template A. | prog.cpp | Slide context | - | - |
Extended variant - revealing the specialization via a data member. | prog.cpp | Slide context | - | - |
Generated: Tuesday August 1, 2017, 13:31:08