integral_constant, classe, bool_constant, classe
Crée une constante intégrale à partir d’un type et d’une valeur.
Syntaxe
template<class T, T v>
struct integral_constant {
static constexpr T value = v;
typedef T value_type;
typedef integral_constant<T, v> type;
constexpr operator value_type() const noexcept;
constexpr value_type operator()() const noexcept;
};
Paramètres
T
Type de la constante.
v
Valeur de la constante.
Notes
Le integral_constant
modèle de classe, lorsqu’il est spécialisé avec un type intégral T et une valeur v de ce type, représente un objet qui contient une constante de ce type intégral avec la valeur spécifiée. Le membre nommé type
est un alias pour le type de spécialisation de modèle généré, et le membre value
contient la valeur v servant à créer la spécialisation.
Le bool_constant
modèle de classe est une spécialisation partielle explicite utilisée integral_constant
bool
comme argument T .
Exemple
// std__type_traits__integral_constant.cpp
// compile with: /EHsc
#include <type_traits>
#include <iostream>
int main()
{
std::cout << "integral_constant<int, 5> == "
<< std::integral_constant<int, 5>::value << std::endl;
std::cout << "integral_constant<bool, false> == " << std::boolalpha
<< std::integral_constant<bool, false>::value << std::endl;
return (0);
}
integral_constant<int, 5> == 5
integral_constant<bool, false> == false
Spécifications
Header :<type_traits>
Espace de noms : std
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour