Namespaces
Variants

std::variant<Types...>::index

De es.cppreference.net
 
 
Biblioteca de utilidades
Soporte del lenguaje
Soporte de tipos (tipos básicos, RTTI)
Macros de prueba de características de la biblioteca (C++20)
Utilidades del programa
Funciones variádicas
Soporte de corrutinas (C++20)
Soporte de contratos (C++26)
Comparación de tres vías
(C++20)
(C++20)(C++20)(C++20)    
(C++20)(C++20)(C++20)

Utilidades generales
Operadores relacionales (obsoleto en C++20)
 
 
constexpr std::size_t index() const noexcept;
(desde C++17)

Devuelve el índice basado en cero de la alternativa que actualmente posee la variante.

Si la variante está valueless_by_exception, devuelve variant_npos.

Ejemplo

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

Salida:

v.index = 1
v.index = 0

Véase también

comprueba si un variant actualmente contiene un tipo dado
(plantilla de función)
lee el valor del variant dado el índice o el tipo (si el tipo es único), lanza excepción en caso de error
(plantilla de función)