2008-11-18 11 views
7

Estoy escribiendo un objeto COM en C++ utilizando ATL y no estoy seguro de si debería usar VARIANT_BOOL para mis métodos/propiedades o no. El objeto será invocado por otras aplicaciones de C++ pero no puedo descartar el uso de .NET.VARIANT_BOOL vs. BOOL

Puedo seguir el viejo BOOL (que IIRC es simplemente un int sin firmar) pero como VARIANT_BOOL está allí, ¿no debería estar usándolo? Si lo uso, y llamo a estos métodos desde una aplicación C++, tengo que agregar código adicional ya que VARIANT_BOOL no es como un booleano 'normal' y tengo que verificar los valores VARIANT_TRUE y VARIANT_FALSE.

¿Es VARIANT_BOOL un anacronismo que puedo olvidar o debo seguir con él?

+0

+1 Respuesta de Arul. Pero, en resumen, sí, use VARIANT_BOOL. –

Respuesta

2

VARIANT_BOOL hará que su componente COM VB6 sea amigable. COM nunca parecía estar hecho para hacer cosas simplemente en C++, sino que se centraba más en facilitar el uso de VB. No estoy seguro si esto todavía se aplica al acceso .net de un componente COM o no.