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

FreeBSD Manual Pages

  
 
  

home | help
std::vector::clear(3)	      C++ Standard Libary	 std::vector::clear(3)

NAME
       std::vector::clear - std::vector::clear

Synopsis
	  void clear();			    (until C++11)
	  void clear() noexcept;	    (since C++11)
					    (until C++20)
	  constexpr void clear() noexcept;  (since C++20)

	  Erases  all elements from the	container. After this call, size() re-
       turns zero.

	  Invalidates any references, pointers,	or iterators referring to con-
       tained elements.
	  Any past-the-end iterators are also invalidated.

	  Leaves the capacity()	of the vector unchanged	(note: the  standard's
       restriction on
	  the  changes to capacity is in the specification of vector::reserve,
       see [1])

Parameters
	  (none)

Return value
	  (none)

Complexity
	  Linear in the	size of	the container, i.e., the number	of elements.

Example
       // Run this code

	#include <algorithm>
	#include <iostream>
	#include <vector>

	int main()
	{
	    std::vector<int> container{1, 2, 3};

	    auto print = [](const int& n) { std::cout << " " <<	n; };

	    std::cout << "Before clear:";
	    std::for_each(container.begin(), container.end(), print);
	    std::cout << "\nSize=" << container.size()	<<  ",	Capacity="  <<
       container.capacity() << '\n';

	    std::cout << "Clear\n";
	    container.clear();

	    std::cout << "After	clear:";
	    std::for_each(container.begin(), container.end(), print);
	    std::cout  <<  "\nSize="  <<  container.size() << ", Capacity=" <<
       container.capacity() << '\n';
	}

Output:
	Before clear: 1	2 3
	Size=3,	Capacity=3
	Clear
	After clear:
	Size=0,	Capacity=3

	 Defect	reports

	  The following	behavior-changing defect reports were applied retroac-
       tively to
	  previously published C++ standards.

	     DR	   Applied to	       Behavior	as published		  Cor-
       rect behavior
	  LWG 2231 C++11      complexity guarantee was mistakenly     complex-
       ity reaffirmed as
			      omitted in C++11			      linear

See also
	  erase	erases elements
		(public	member function)

http://cppreference.com		  2022.07.31		 std::vector::clear(3)

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

home | help