std::meta::has_c_language_linkage
De fr.cppreference.net
| Défini dans l'en-tête <meta>
|
||
consteval bool has_c_language_linkage( std::meta::info r );
|
(depuis C++26) | |
Détermine si r représente une variable, une fonction ou un type de fonction avec liaison de langage "C" language linkage (extern "C"). Renvoie true si c'est le cas, false sinon.
Paramètres
| r | - | une valeur de réflexion |
Valeur de retour
true si ce que r représente a une liaison de langage "C", false sinon.
Notes
Si r ne représente pas une variable, une fonction ou un type de fonction (par exemple, si r représente un modèle de fonction), le résultat est false.
Exemple
Exécuter ce code
#include <meta>
extern "C" void foo();
static_assert(std::meta::has_c_language_linkage(^^foo) == true);
void moo();
static_assert(std::meta::has_c_language_linkage(^^moo) == false);
template<typename T>
T boo();
static_assert(std::meta::has_c_language_linkage(^^boo) == false);
int main() {}
Voir aussi
| vérifie si l'entité réfléchie a une liaison (fonction) |