Skip to Main Content
Intel Threading Building Blocks
book

Intel Threading Building Blocks

by James Reinders
July 2007
Intermediate to advanced content levelIntermediate to advanced
332 pages
10h 4m
English
O'Reilly Media, Inc.
Content preview from Intel Threading Building Blocks

Models in Generic Programming

A type models a Concept if it meets the requirements of the Concept. For example, type int models the Sortable Concept in Table 12-1 if there exists a function swap(x,y) that swaps two int values x and y. The other requirement for Sortable, specifically x<y, is already met by the built-in operator< on type int.

The library sometimes requires that a type model the CopyConstructible Concept, which is defined by the ISO C++ standard and provides fundamental operations for creating and referring to the type. Table 12-2 shows the requirements for CopyConstructible in pseudosignature form. For a type to model the CopyConstrutible Concept, it needs to implement each operation specified in Table 12-2. This way, containers and algorithms that expect CopyConstructible types will be able to use your types, too.

Table 12-2. CopyConstructible requirements

Pseudosignature

Semantics

T( const T& )

Construct copy of T.

~T()

Destructor.

T* operator&()

Take address of T.

const T* operator&() const

Take address of T.

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Intel® Xeon Phi™ Coprocessor Architecture and Tools: The Guide for Application Developers

Intel® Xeon Phi™ Coprocessor Architecture and Tools: The Guide for Application Developers

Rezaur Rahman

Publisher Resources

ISBN: 9780596514808Errata Page