View on GitHub


Experiments in C++ Library Design

Download this project as a .zip file Download this project as a tar.gz file


A concept is a predicate that defines requirements on template arguments. Concepts are used within the constraints of a template declaration to a) express the kinds of types that can be used with that template and b) to enforce those requirements at compile time.

Each concept defines its requirements in terms of syntax or use patterns and the required behavior of those operations.

The primary groups of concepts are: