std::meta::reflect_constant_string
| Défini dans l'en-tête <meta>
|
||
template< ranges::input_range R >
consteval std::meta::info reflect_constant_string( R&& r );
|
(since C++26) | |
Renvoie une réflexion qui représente un objet tableau de caractères dont les éléments sont les éléments correspondants de r, avec un caractère nul ajouté si r n'est pas un objet littéral de chaîne.
L'objet tableau de caractères résultant est un objet paramètre de modèle : il a une durée de stockage statique, et les chaînes avec le même contenu correspondent au même objet.
L'objet tableau de caractères résultant est également un objet potentiellement non unique.
Formellement, soit :
CharTsoitranges::range_value_t<R>, qui doit être l'un dechar,wchar_t,char8_t,char16_t, ouchar32_t.Vsoit le pack de valeurs de typeCharT, dont les éléments sont les éléments correspondants der, sauf que sirest un objet littéral de chaîne,Vn'inclut pas le caractère nul de terminaison der.Psoit le objet paramètre de modèle de typeconst CharT[sizeof...(V) + 1], initialisé avec{V..., CharT()}.
Cette fonction renvoie une réflexion qui représente l'objet P.
Paramètres
| r | - | une input_range de caractères |
Valeur de retour
Une réflexion qui représente un objet tableau de caractères, comme décrit ci-dessus.
Notes
Le résultat de std::meta::reflect_constant_string est adapté à une utilisation avec std::meta::substitute. Si l'appelant souhaite un pointeur vers une chaîne statique, par opposition à une valeur de réflexion, std::define_static_string est généralement plus approprié.
Exemple
| Cette section est incomplète Raison : pas d'exemple |
Voir aussi
(C++26) |
promeut une chaîne à la compilation vers un stockage statique, renvoyant un pointeur vers le premier caractère de la chaîne statique (fonction template) |
(C++26) |
promeut un tableau à la compilation vers un stockage statique, renvoyant une réflexion représentant le tableau statique (fonction template) |
(C++26) |
renvoie une réflexion représentant une valeur ou un objet paramètre de modèle, adapté à une utilisation comme argument template constant (fonction template) |