2016-09-20 1 views
1

Si j'initialise une variable avec une valeur de nullptr. puis je récupère une fonction WinAPI qui peut renvoyer une valeur NULL en cas d'échec, dois-je utiliser NULL ou puis-je encore vérifier nullptr lors de la vérification de ce que la fonction a échoué ou non?nullptr valeur initiale et WinAPI NULL return

if (windowfunctionresult == nullptr) 
{ 
    return false; 
} 

Répondre

2

Selon cppreference:

Le mot-clé nullptr désigne le pointeur littéral. C'est une prvalue de type std::nullptr_t. Il existe des conversions implicites de nullptr à null valeur de pointeur de tout type de pointeur et tout pointeur sur le type de membre. Des conversions similaires existent pour toute constante de pointeur nul, qui inclut des valeurs de type std::nullptr_t ainsi que la macro NULL.

Alors nullptr et NULL se comportera de la même dans le contexte de vérifier si un pointeur est nul.

Mais vous pouvez aussi compter simplement sur le pointeur-to-conversion bool:

if (!windowfunctionresult) 
{ 
    return false; 
}