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::drop_view::size - std::ranges::drop_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.

	  Let  base_  be the underlying	view, count_ be	the stored count (usu-
       ally the	number
	  passed to the	constructor, or	0 if *this  is	default	 constructed).
       Equivalent
	  to

	const auto s = ranges::size(base_);
	const auto c = static_cast<decltype(s)>(count_);
	return s < c ? 0 : s - c;

Parameters
	  (none)

Return value
	  The number of	elements.

Example
       // Run this code

	#include <array>
	#include <ranges>

	int main()
	{
	    constexpr std::array a{42, 43, 44};
	    static_assert(std::ranges::drop_view{std::views::all(a), 0}.size()
       == 3);
	    static_assert(std::ranges::drop_view{std::views::all(a), 1}.size()
       == 2);
	    static_assert(std::ranges::drop_view{std::views::all(a), 2}.size()
       == 1);
	    static_assert(std::ranges::drop_view{std::views::all(a), 3}.size()
       == 0);
	    static_assert(std::ranges::drop_view{std::views::all(a), 4}.size()
       == 0);
	}

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::drop_view::size&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help