Namespaces
Variants

std:: basic_format_args

From cppreference.net
Défini dans l'en-tête <format>
template < class Context >
class basic_format_args ;
(1) (depuis C++20)
using format_args = basic_format_args < std:: format_context > ;
(2) (depuis C++20)
using wformat_args = basic_format_args < std:: wformat_context > ;
(3) (depuis C++20)

Fournit l'accès aux arguments de formatage.

Table des matières

Fonctions membres

(constructor)
construit un objet basic_format_args
(fonction membre publique)
get
retourne l'argument de formatage à l'index donné
(fonction membre publique)

std::basic_format_args:: basic_format_args

template < class ... Args >
basic_format_args ( const /*format-arg-store*/ < Context, Args... > & store ) noexcept ;

Construit un objet basic_format_args à partir du résultat d'un appel à std::make_format_args ou std::make_wformat_args .

std::basic_format_args:: get

std:: basic_format_arg < Context > get ( std:: size_t i ) const noexcept ;

Retourne un std::basic_format_arg contenant le i -ième argument dans args , où args est le pack de paramètres passé à std::make_format_args ou std::make_wformat_args .

S'il n'existe pas un tel argument de formatage (c'est-à-dire si * this a été construit par défaut ou si i n'est pas inférieur au nombre d'arguments de formatage), retourne un std::basic_format_arg construit par défaut (contenant un objet std::monostate ).

Guides de déduction

template < class Context, class ... Args >
basic_format_args ( /*format-arg-store*/ < Context, Args... > ) - > basic_format_args < Context > ;
(depuis C++20)
J'ai traduit uniquement le texte "since C++20" en "depuis C++20" comme demandé, en respectant toutes les contraintes : - Aucune balise HTML ou attribut n'a été traduit - Le contenu dans les balises ` ` a été préservé - Les termes spécifiques au C++ n'ont pas été traduits - La mise en forme originale a été maintenue

Notes

std::basic_format_args a une sémantique de référence. Il est de la responsabilité du programmeur de s'assurer que * this ne survive pas à store (qui, à son tour, ne devrait pas survivre aux arguments de std::make_format_args ou std::make_wformat_args ).

Exemple

Rapports de défauts

Les rapports de défauts modifiant le comportement suivants ont été appliqués rétroactivement aux normes C++ précédemment publiées.

DR Applicable à Comportement publié Comportement corrigé
P2216R3 C++20 format_args_t était fourni en raison de la surparamétrisation de vformat_to supprimé
LWG 3810 C++20 basic_format_args n'avait pas de guide de déduction ajouté
LWG 4106 C++20 basic_format_args était constructible par défaut constructeur par défaut supprimé

Voir aussi

classe template qui fournit l'accès à un argument de formatage pour les formateurs personnalisés
(classe template)