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

FreeBSD Manual Pages

  
 
  

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

NAME
       std::move_constructible - std::move_constructible

Synopsis
	  Defined in header <concepts>
	  template< class T >
	  concept   move_constructible	 =  std::constructible_from<T,	T>  &&
       (since C++20)
	  std::convertible_to<T, T>;

	  The concept move_constructible is satisfied  if  T  is  a  reference
       type, or	if it is an
	  object  type where an	object of that type can	be constructed from an
       rvalue of that
	  type in both direct-	and  copy-initialization  contexts,  with  the
       usual semantics.

	 Semantic requirements

	  If  T	 is an object type, then move_constructible<T> is modeled only
       if given

	    * rv, an rvalue of type T, and
	    * u2, a distinct object of type T equal to rv,

	  the following	are true:

	    * After the	definition T u = rv;, u	is equal to u2;
	    * T(rv) is equal to	u2; and
	    * If T is not const-qualified, then	rv's  resulting	 state	(after
       the
	      definition/expression  is	 evaluated in either bullets above) is
       valid but
	      unspecified; otherwise, it is unchanged.

See also
	  is_move_constructible
	  is_trivially_move_constructible checks if a type can be  constructed
       from an rvalue
	  is_nothrow_move_constructible	  reference
	  (C++11)			  (class template)
	  (C++11)
	  (C++11)

http://cppreference.com		  2022.07.31	    std::move_constructible(3)

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

home | help