Compartir a través de


any class

Un objeto any almacena una instancia de un tipo que cumple los requisitos del constructor o no tiene ningún valor. Tanto si tiene una instancia almacenada como si no tiene ningún valor, se denomina estado del objeto any.

La instancia almacenada se denomina valor contenido. Dos objetos any tienen el mismo estado si ambos no tienen ningún valor, o ambos tienen un valor contenido y esos valores son los mismos.

Sintaxis

class any;

Miembros

Constructores

Nombre Descripción
any Construye un objeto de tipo any.

Funciones

Nombre Descripción
emplace Establece un valor any.
has_value Devuelve true si any tiene un valor.
reset Restablece un any.
swap Intercambia dos objetos any.
type Devuelve el tipo any.

Operadores

Nombre Descripción
operator= Reemplaza la clase any por una copia de otra clase any.

any

Construye un objeto de tipo any. También incluye un destructor.

constexpr any() noexcept;
any(const any& other);
any(any&& other) noexcept;
template <class T>
    any(T&& value);
template <class T, class... Args>
    explicit any(in_place_type_t<T>, Args&&...);
template <class T, class U, class... Args>
    explicit any(in_place_type_t<T>, initializer_list<U>, Args&&...);

~any();

emplace

Establece un valor any.

template <class T, class... Args>
    decay_t<T>& emplace(Args&& ...);
template <class T, class U, class... Args>
    decay_t<T>& emplace(initializer_list<U>, Args&&...);

has_value

Devuelve true si el objeto any tiene un valor.

bool has_value() const noexcept;

operator=

Reemplaza el contenido any con una copia de otro any.

any& operator=(const any& right);
any& operator=(any&& right) noexcept;
template <class T>
    any& operator=(T&& right);

Parámetros

right
La clase any que se copia en este any.

reset

Restablece un any.

void reset() noexcept;

swap

Intercambia dos objetos any.

void swap(any& rhs) noexcept;

type

Devuelve el tipo any.

const type_info& type() const noexcept;

Requisitos

Encabezado<any>:

Espacio de nombres: std

Estándar: C++17 (use al menos /std:c++17 para compilar).

Consulte también

<any>
any_cast
make_any
swap
bad_any_cast