Question

Suis-je apte à transtyper un booléen C ++ vers un booléen API Windows via cette construction

bool mybool = true;
BOOL apiboolean = mybool ? TRUE : FALSE;

Je suppose que c'est un oui parce que je ne vois pas de problèmes évidents, mais je voulais prendre un moment pour poser des questions uniquement parce que cela peut être plus subtil qu'il n'y paraît.

Merci à Dima pour avoir (doucement) souligné mon négligence dans la manière dont j'avais formulé la question à l'origine.

Était-ce utile?

La solution

Voulez-vous dire


bool b;
...
BOOL apiboolean = b ? TRUE : FALSE;

Si oui, alors oui, cela fonctionnera.

Autres conseils

Oui, cela fonctionnera, mais

bool b;
...
BOOL apiboolean = (BOOL) b;

devrait fonctionner aussi bien que l'inverse:

bool bb = (bool) apiboolean;

Visual Studio 2005 acceptera simplement:

bool b = true;
BOOL apiboolean = b;

aucun casting requis .

Notez que l'inverse de BOOL - > bool ne fonctionne pas simplement comme ceci.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top