7

Visual C++ で s を操作できる、使いやすい高レベルのクラスまたはライブラリはありますか?VARIANT

doubleより具体的には、POD タイプ (例: 、long)、文字列 (例CString)、およびコンテナー (例std::vector) とVARIANTs の間で変換したいと考えています。例えば:

long val = 42;
VARIANT var;
if (ToVariant(val, var)) ...     // tries to convert long -> VARIANT
comObjPtr->someFunc(var);

std::vector<double> vec;
VARIANT var = comObjPtr->otherFunc();
if (FromVariant(var, vec)) ...   // tries VARIANT -> std::vector<double>

私は (素朴に?) COM を使用する人は常にこれを行っていると想定していたので、あらゆる種類の変換を処理する単一の便利なライブラリが存在する可能性が最も高いでしょう。しかし、私が見つけることができたのは、それぞれいくつかの型を変換するさまざまなラッパー クラスの組み合わせだけです。

VT_ARRAY | VT_I4Visual Basic に切り替える以外に、厄介なメモリ管理とビット単位のコードのこの悪夢を回避する簡単な方法はありますか?

関連する質問:

4

1 に答える 1