2008-11-18 27 views
7

Tôi đang viết một đối tượng COM trong C++ sử dụng ATL và không chắc liệu tôi có nên sử dụng VARIANT_BOOL cho các phương thức/thuộc tính của tôi hay không. Đối tượng sẽ được gọi bởi các ứng dụng C++ khác nhưng tôi không thể loại trừ việc sử dụng .NET.VARIANT_BOOL so với BOOL

Tôi có thể gắn bó với cũ cũ BOOL (mà IIRC đơn giản là một int không dấu) nhưng như VARIANT_BOOL là có, tôi không nên sử dụng nó? Nếu tôi sử dụng nó và gọi các phương thức này từ ứng dụng C++, tôi phải thêm mã phụ là VARIANT_BOOL không giống như boolean 'bình thường' và tôi phải kiểm tra các giá trị VARIANT_TRUEVARIANT_FALSE.

VARIANT_BOOL một lỗi thời mà tôi có thể quên hoặc tôi nên gắn bó với nó?

+0

+1 Câu trả lời của Arul. Nhưng trong ngắn hạn, có, sử dụng VARIANT_BOOL. –

Trả lời

2

VARIANT_BOOL sẽ làm cho thành phần COM của bạn thân thiện với VB6. COM không bao giờ thực sự dường như được thực hiện để làm những điều đơn giản trong C++, nhưng tập trung hơn vào làm cho nó dễ sử dụng từ VB. Bạn không chắc chắn nếu điều này vẫn áp dụng cho truy cập .net của một thành phần COM hay không.

Các vấn đề liên quan