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

FreeBSD Manual Pages

  
 
  

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

NAME
       std::holds_alternative -	std::holds_alternative

Synopsis
	  Defined in header <variant>
	  template< class T, class... Types >
	  constexpr  bool holds_alternative( const std::variant<Types...>& v )
       (since C++17)
	  noexcept;

	  Checks if the	variant	v holds	the alternative	T. The	call  is  ill-
       formed if T does
	  not appear exactly once in Types...

Parameters
	  v - variant to examine

Return value
	  true	if the variant currently holds the alternative T, false	other-
       wise.

Example
       // Run this code

	#include <variant>
	#include <string>
	#include <iostream>
	int main()
	{
	    std::variant<int, std::string> v = "abc";
	    std::cout << std::boolalpha
		      << "variant holds	int? "
		      << std::holds_alternative<int>(v)	<< '\n'
		      << "variant holds	string?	"
		      << std::holds_alternative<std::string>(v)	<< '\n';
	}

Output:
	variant	holds int? false
	variant	holds string? true

See also
			    returns the	zero-based index  of  the  alternative
       held by the
	  index		    variant
			    (public member function)
	  get(std::variant)  reads the value of	the variant given the index or
       the type	(if the
	  (C++17)	    type is unique), throws on error
			    (function template)

http://cppreference.com		  2024.06.10	     std::holds_alternative(3)

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

home | help