2009-06-23 11 views
0

は、すべてのボディは、私はエラーを取得していますので、インターフェイスポインタはVC++で変数を一覧表示する変換で私を助けることができるtypeconversionvC++(例:IListPtr)のポインタをstd :: listに変換するには?

エラー2440「タイプキャスト」中:STD」に「_bstr_t」から変換することはできません::リスト< _Ty>」

編集:私はこのようにそれを行っている:

C#

List<string> Disp() { 
    List<string> li = new List<string>(); 
    li.Add("Ravi"); 
    li.Add("Raj"); 
    Return li; 
} 

C++

void main() { 
    HRESULT Hr=CoInitilize(NULL); 
    ITestPtr p(__uuid("DemoClass"); 
    std::list l=(std::list)p->Disp(); 
} 

しかし、それは、DISPがたITestのメンバー、時にはその型変換エラーではないことを示して妙にいくつかの回。私はこれが戻り値の型がリストの場合のみであることを確認しました

+1

ファーストを使用することができ、あなたは私たちを表示する必要がありますいくつかのコード。次に、コードを見てアドバイスします。気分がいい? –

+0

私たちに教えてくださいpええ! – Tom

答えて

0

本当に素敵なショートカットがCLIリストを手動で移動し、push_back()をstd :: listに移動しない限り、それがどのように見えるかの可能な例として

(私はC++/CLIを知らない)

std::list<T> stdlist; 
foreach(T t in CLIlist) 
{ 
    stdlist.push_back(t); 
} 
+0

わかりやすく説明してください...... – Cute

+0

@Cute。それはそれが得られるほど明確です。 –

関連する問題