4 ms·
Wikipedia has a pretty thorough and accessible description (http://en.wikipedia.org/wiki/C%2B%2B0x#Concepts http://en.wikipedia.org/wiki/C%2B%2B0x#Concepts). B
by jknupp 17y ago
Wikipedia has a pretty thorough and accessible description (http://en.wikipedia.org/wiki/C%2B%2B0x#Concepts http://en.wikipedia.org/wiki/C%2B%2B0x#Concepts).
Briefly, "Concepts provide a mechanism for codifying the interface that a template parameter must meet". For example, a container class in the STL may require that the contained type be less-than comparable. Concepts would provide a way to express this restriction in a way that makes compiler error messages more understandable. As one would expect, a type may include a "requirements list" composed of orthogonal concepts (e.g. a class must be less-than comparable AND copyable). For more advanced uses, see the Wikipedia article or Bjarne's latest proposal.
Additionally, a number of proposed additions to the standard relied on concepts being included. These will need to be either reworked or dropped as well.