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::adjacent_transform_view::size     -	    std::ranges::adja-
       cent_transform_view::size

Synopsis
	  constexpr  auto  size()   requires   ranges::sized_range<InnerView>;
       (since C++23)
	  constexpr   auto  size()  const  requires  ranges::sized_range<const
       (since C++23)
	  InnerView>;

	  Returns the number of	elements.

	  Let inner_ be	the underlying object of type InnerView	(that is the
	  ranges::adjacent_view<V,N>).

	  1,2) Equivalent to return inner_.size();.

Parameters
	  (none)

Return value
	  The number of	elements, may be 0 if the size of the underlying  view
       V is less than
	  N.

Example
       // Run this code

	#include <ranges>

	int main()
	{
	    constexpr static auto v = {1, 2, 3,	4, 5, 6};

	    auto f = [](auto...) { return 0; };	// dummy

	    constexpr int width1 {4};
	    constexpr	auto   view1   =   v   |   std::views::adjacent_trans-
       form<width1>(f);
	    static_assert(view1.size() == 3);
	    static_assert(view1.size() == (v.size() - width1 + 1));

	    constexpr int width2 {8};
	    constexpr	auto   view2   =   v   |   std::views::adjacent_trans-
       form<width2>(f);
	    // window is too wide, so view2 has	no elements:
	    static_assert(view2.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		  2024.06.10	  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::adjacent_transform_view::size&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help