Difference between revisions of "Template:cpp/container/assign"
From cppreference.com
(+type reqs) |
|||
Line 8: | Line 8: | ||
template< class InputIt > | template< class InputIt > | ||
void assign( InputIt first, InputIt last ); | void assign( InputIt first, InputIt last ); | ||
+ | }} | ||
+ | {{ddcl list item | num=3 | notes={{cpp/container/mark since c++11 | {{{1|}}}}} | 1= | ||
+ | void assign( std::initializer_list<T> ilist ); | ||
}} | }} | ||
{{ddcl list end}} | {{ddcl list end}} | ||
Line 16: | Line 19: | ||
2) replaces the contents with copies of those in the range {{tt|[first, last)}} | 2) replaces the contents with copies of those in the range {{tt|[first, last)}} | ||
+ | |||
+ | 3) replaces the contents with the elements from the initializer list {{tt|ilist}}. | ||
===Parameters=== | ===Parameters=== | ||
Line 22: | Line 27: | ||
{{param list item | value | the value to initialize elements of the container with}} | {{param list item | value | the value to initialize elements of the container with}} | ||
{{param list item | first, last | the range to copy the elements from}} | {{param list item | first, last | the range to copy the elements from}} | ||
+ | {{param list item | ilist | initializer list to copy the values from}} | ||
{{param list hreq}} | {{param list hreq}} | ||
{{param list req concept | InputIt | InputIterator}} | {{param list req concept | InputIt | InputIterator}} | ||
Line 31: | Line 37: | ||
2) linear in distance between {{tt|first}} and {{tt|last}} | 2) linear in distance between {{tt|first}} and {{tt|last}} | ||
+ | |||
+ | 3) linear in {{c|ilist.size()}} | ||
===Example=== | ===Example=== |
Revision as of 15:17, 16 February 2013
Template:ddcl list begin <tr class="t-dcl ">
<td >void assign( size_type count, const T& value );
</td>
<td > (1) </td> <td class="t-dcl-nopad"> </td> </tr> <tr class="t-dcl ">
<td >template< class InputIt >
void assign( InputIt first, InputIt last );
</td>
void assign( InputIt first, InputIt last );
<td > (2) </td> <td class="t-dcl-nopad"> </td> </tr> <tr class="t-dcl ">
<td >void assign( std::initializer_list<T> ilist );
</td>
<td > (3) </td> <td class="t-dcl-nopad"> </td> </tr> Template:ddcl list end
Replaces the contents of the container.
1) replaces the contents with count
copies of value value
2) replaces the contents with copies of those in the range [first, last)
3) replaces the contents with the elements from the initializer list ilist
.
Contents |
Parameters
count | - | the new size of the container |
value | - | the value to initialize elements of the container with |
first, last | - | the range to copy the elements from |
ilist | - | initializer list to copy the values from |
Type requirements | ||
-InputIt must meet the requirements of LegacyInputIterator.
|
Complexity
1) linear in count
2) linear in distance between first
and last
3) linear in ilist.size()
Example
The following code uses assign
to add several characters to a std::{{{1}}}<char>:
Run this code
#include <{{{1}}}> #include <iostream> int main() { std::{{{1}}}<char> characters; characters.assign(5, 'a'); for (char c : characters) { std::cout << c << '\n'; } return 0; }
Output:
a a a a a