Je suis tombé sur void();
utilisé comme un 'ne rien faire' dans la branche 'else' d'un opérateur ternaire, comme un raccourci pour une vérification de pointeur nul
if(var){ var->member(); }
comme
var ? var->member() : void();
mais je n'arrive pas à trouver de référence au mot-clé void
utilisé de cette manière, est-ce une fonction ou un appel de foncteur sur le mot-clé void
lui-même? ou est-ce qu'il ne transforme rien en void
? ou est-ce juste la syntaxe C++ de quelque chose comme pass
?
Edit: Le type de retour de member()
est void
dans cette situation.
Je n'ai vu que de tels codes écrits par des personnes qui étaient de "vieux automobilistes", pour ainsi dire. Un appel void()
ne fait fondamentalement rien, et les opérateurs ternaires vous demandent de mettre quelque chose dans la branche else, donc les gens le font parfois. if (stuff) { stuff->member(); }
serait également une ligne unique.