Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::list::resize(3)	      C++ Standard Libary	  std::list::resize(3)

NAME
       std::list::resize - std::list::resize

Synopsis
	  void	resize(	 size_type  count  );			    (1)	(since
       C++11)
	  void	 resize(   size_type	count,	  T    value	=    T()    );
       (until C++11)
	  void	 resize(   size_type   count,	const	value_type&	   (2)
       (since C++11)
	  value	);

	  Resizes the container	to contain count elements.

	  If the current size is greater than count, the container is  reduced
       to its first
	  count	elements.

	  If the current size is less than count,

	  1) additional	default-inserted elements are appended
	  2) additional	copies of value	are appended.

Parameters
	  count		 -	    new	size of	the container
	  value		  -	      the value	to initialize the new elements
       with

Type requirements
	  -
	  T must meet the requirements of DefaultInsertable in	order  to  use
       overload	(1).
	  -
	  T must meet the requirements of CopyInsertable in order to use over-
       load (2).

Return value
	  (none)

Complexity
	  Linear in the	difference between the current size and	count.

Notes
	  If value-initialization in overload (1) is undesirable, for example,
       if the elements
	  are  of  non-class  type  and	 zeroing  out is not needed, it	can be
       avoided by providing
	  a custom Allocator::construct.

Example
       // Run this code

	#include <iostream>
	#include <list>
	int main()
	{
	    std::list<int> c = {1, 2, 3};
	    std::cout << "The list holds: ";
	    for(const auto& el:	c) std::cout <<	el << '	';
	    std::cout << '\n';
	    c.resize(5);
	    std::cout << "After	resize up to 5:	";
	    for(const auto& el:	c) std::cout <<	el << '	';
	    std::cout << '\n';
	    c.resize(2);
	    std::cout << "After	resize down to 2: ";
	    for(const auto& el:	c) std::cout <<	el << '	';
	    std::cout << '\n';
	    c.resize(6,	4);
	    std::cout << "After	resize up to 6 (initializer = 4): ";
	    for(const auto& el:	c) std::cout <<	el << '	';
	    std::cout << '\n';
	}

Output:
	The list holds:	1 2 3
	After resize up	to 5: 1	2 3 0 0
	After resize down to 2:	1 2
	After resize up	to 6 (initializer = 4):	1 2 4 4	4 4

See also
	  size	 returns the number of elements
		 (public member	function)
	  insert inserts elements
		 (public member	function)
	  erase	 erases	elements
		 (public member	function)

http://cppreference.com		  2022.07.31		  std::list::resize(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::list::resize&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help