私は、Windows のみの C++ コードで使用する必要がある COM オブジェクトを持っている状況にあります。COM オブジェクトには、バイト配列を渡すための引数として SAFEARRAY を受け入れる関数があります。SAFEARRAY API ( http://msdn.microsoft.com/en-us/library/windows/desktop/ms221145(v=vs.85).aspx ) を見た後、それは私が望んでいたものではなく、オブジェクト指向ラッパーを見つける必要があります。オープンソースのものを探してみましたが、見つかりませんでした。私は、Microsoft が SAFEARRAY をカプセル化しているように見える 2 つのオブジェクトを作成したことを発見しました。CComSafeArray はまさに私が必要としているもののように見えます.COleSafeArray は便利かもしれませんが、レガシー互換性のためだけに存在する可能性があります.
COleSafeArray は歴史的な互換性のためだけのものですか、それとも欠けているものがありますか?
CComSafeArray の代わりに COleSafeArray を使用する必要があるのはいつですか?
検討する価値のあるオープンソースの実装はありますか?
それぞれの長所と短所は何ですか?