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

FreeBSD Manual Pages

  
 
  

home | help
std::ranges..._view::size(3)  C++ Standard Libary std::ranges..._view::size(3)

NAME
       std::ranges::take_view::size - std::ranges::take_view::size

Synopsis
	  constexpr	auto	 size()	   requires    ranges::sized_range<V>;
       (1) (since C++20)
	  constexpr auto size()	const requires	ranges::sized_range<const  V>;
       (2) (since C++20)

	  Returns  the	number	of elements, which is the smaller of the count
       passed to the
	  constructor and the size of the underlying view.

	  Let base_ be the underlying view, count_ be the number passed	to the
       constructor
	  (0 if	default	constructed). Equivalent to

	auto n = ranges::size(base_);
	return ranges::min(n, static_cast<decltype(n)>(count_));

Parameters
	  (none)

Return value
	  The number of	elements.

Example
       // Run this code

	#include <ranges>
	#include <iostream>

	int main()
	{
	    constexpr int arr[]	{1, 2, 3};

	    for	(int i = 0; i != 6; ++i) {
		const auto tv =	std::ranges::take_view{arr, i};
		std::cout << tv.size() << ' ';
	    }
	}

Output:
	0 1 2 3	3 3

See also
	  ranges::size	returns	an integer equal to the	size of	a range
	  (C++20)	(customization point object)
	  ranges::ssize	returns	a signed integer equal to the size of a	range
	  (C++20)	(customization point object)

http://cppreference.com		  2022.07.31	  std::ranges..._view::size(3)

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

home | help