1

Linux に移植したい Windows コードがあります。ある場所では、_bstr_t を使用しています。利用可能な最小限の _bstr_t ポートがあるかどうか疑問に思っていました。あちこち探しましたが、見つかりませんでした。

移植したいWindowsコードは次のようなものです-

char **p;
// Malloc and assign some value to *p
_bstr_t str((wchar_t *)*p);
memcpy((char *)*p, (char *)str, len);

調べてみると、_bstr_t オブジェクトには、文字列を 1 バイト文字列として返す (char*) 演算子があることがわかりました。したがって、私が本質的に探しているのは、コンストラクタとオーバーロードされた (char *) 演算子です。

_bstr_t で既に利用可能なポートをどこで見つけることができるかについての提案はありますか? または、この最小限の _bstr_t を実装する方法についてのアイデアはありますか?

ありがとう!

4

1 に答える 1

1

メモリ管理が処理される文字列だけが必要な場合は、std::string(charベースの文字列の場合) またはstd::wstring(ベースの文字列の場合) を使用しwchar_tます。

BSTRLinux で必要なタイプに固有のものはありますか? おそらく、同等のものを必要とする特定の API 関数でしょうか?

于 2012-08-21T23:12:49.027 に答える