Namespaces
Variants
Views
Actions

std::basic_common_reference<tuple-like>

From cppreference.com
< cpp‎ | utility‎ | tuple
 
 
Utilities library
Language support
Type support (basic types, RTTI)
Library feature-test macros (C++20)
Dynamic memory management
Program utilities
Coroutine support (C++20)
Variadic functions
Debugging support
(C++26)
Three-way comparison
(C++20)
(C++20)(C++20)(C++20)
(C++20)(C++20)(C++20)
General utilities
Date and time
Function objects
Formatting library (C++20)
(C++11)
Relational operators (deprecated in C++20)
Integer comparison functions
(C++20)(C++20)(C++20)   
(C++20)
Swap and type operations
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
Common vocabulary types
(C++11)
(C++17)
(C++17)
(C++17)
(C++11)
(C++17)
(C++23)
Elementary string conversions
(C++17)
(C++17)

 
 
Defined in header <tuple>
template< tuple-like TTuple, tuple-like UTuple,

          template<class> class TQual, template<class> class UQual >
    requires /* see below */

struct basic_common_reference<TTuple, UTuple, TQual, UQual>;
(since C++23)

The common reference type of two tuple-like types is a std::tuple consists of the common reference types of all corresponding element type pairs of both types, where the cv and reference qualifiers on the tuple-like types are applied to their element types.

Given

the following constraints need to be satisfied:

[edit] Member types

Member type Definition
type std::tuple<std::common_reference_t<TQual<TTypes>..., UQual<UTypes>>...>

[edit] Example

[edit] See also

determines the common reference type of a group of types
(class template) [edit]
determines the common reference type of two pairs
(class template specialization) [edit]