Difference between revisions of "cpp/named req/CopyConstructible"
From cppreference.com
m (Update links.) |
(align the wording with the std (table 21 CopyConstructible)) |
||
Line 3: | Line 3: | ||
Specifies that an instance of the type can be copy-constructed (copied). | Specifies that an instance of the type can be copy-constructed (copied). | ||
− | |||
− | |||
===Requirements=== | ===Requirements=== | ||
− | The type must | + | The type must satisfy {{concept|MoveConstructible}}. |
− | + | ||
− | {{ | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | In addition, the following expressions must be valid and have the specified effects: | |
{{dsc begin}} | {{dsc begin}} | ||
{{dsc hitem | Expression | Effects}} | {{dsc hitem | Expression | Effects}} | ||
− | {{dsc | {{c|1=Type a = v;}} | {{tt|a}} is equivalent to {{tt|v}}, where {{tt|v}} is an instance of {{tt|Type}}. {{tt|v}} must | + | {{dsc | {{c|1=Type a = v;}} | {{tt|a}} is equivalent to {{tt|v}}, where {{tt|v}} is an instance of {{tt|Type}}. {{tt|v}} must remain unchanged.}} |
− | {{dsc | {{c|Type(v);}} | a temporary object of type {{tt|Type}} is equivalent to {{tt|v}}, where {{tt|v}} is an instance of {{tt|Type}}. {{tt|v}} must | + | {{dsc | {{c|Type(v);}} | a temporary object of type {{tt|Type}} is equivalent to {{tt|v}}, where {{tt|v}} is an instance of {{tt|Type}}. {{tt|v}} must remain unchanged. }} |
{{dsc end}} | {{dsc end}} | ||
− | |||
===See also=== | ===See also=== |
Revision as of 11:25, 28 December 2013
Template:cpp/concept/title Template:cpp/concept/navbar
Specifies that an instance of the type can be copy-constructed (copied).
Requirements
The type must satisfy Template:concept.
In addition, the following expressions must be valid and have the specified effects:
Expression | Effects |
Type a = v; | a is equivalent to v , where v is an instance of Type . v must remain unchanged.
|
Type(v); | a temporary object of type Type is equivalent to v , where v is an instance of Type . v must remain unchanged.
|
See also
(C++11)(C++11)(C++11) |
checks if a type has a copy constructor (class template) |