ClassIdioms

Regular Types

/
The concept of a regular type goes back to the creator of the Standard Template Library (STL) Alexander…
classes

The Rule of Zero, or Six

/
The rule of zero, or six, is one of the advanced rules in modern C++. I wrote in my current book "C++…
GeneralIdioms

Argument-Dependent Lookup and the Hidden Friend Idiom

/
Argument-Dependent Lookup (ADL), also known as Koenig Lookup, is a set of "magical" rules for the lookup…
GeneralIdioms

Partial Function Application

/
Partial Function Application is a technique in which a function binds a few of its arguments and returns…
GeneralIdioms

The Copy-and-Swap Idiom

/
An idiom is an architectural or design pattern implementation in a concrete programming language. Applying…
BehavioralPattern

The Template Method

/
The Template Method is a behavioral design pattern. It defines a skeleton for an algorithm and is probably…
BehavioralPattern

The Visitor Pattern

/
The Visitor Pattern encapsulates an operation executed on an object hierarchy as an object and enables…
BehavioralPattern

The Observer Pattern

/
The Observer Pattern is a behavioral pattern from the book   "Design Patterns: Elements of Reusable…
patterns

The Proxy Pattern

/
The Proxy Pattern is probably the most influential design pattern for C++. The Proxy provides a placeholder…
BehavioralPattern

The Strategy Pattern

/
The Strategy Pattern is a behavioral design pattern from the book Design Patterns: Elements of Reusable…