none
C#轉譯成C++/CLI程式問題 RRS feed

  • 問題

  • 請教各位高手,

    在C#中

    private Queue<string> msgQueue;

    msgQueue = new Queue<string>();

    //C#
    private void Switchboard_ContactJoined(object sender, ContactEventArgs e)
    		{
    			InternalSendTextMessage(e.Contact);			
    		}
    

    在C++/CLI中語法要怎麼寫呢?

    第一個我是完全不知道..

    第二個我是這樣寫的:

    private: void Switchboard_ContactJoined(Object ^sender, ContactEventArgs ^e){
    					 SimpleMsnMessenger::InternalSendTextMessage(e->Contact);			
    		}
    

    可是編譯後會說

    error C2664: 'MsnDemo::SimpleMsnMessenger::InternalSendTextMessage' : 無法將參數 1 從 'MSNPSharp::Contact ^' 轉換成 'MSNPSharp::Contact'
    1>        沒有使用者定義的轉換運算子,或
    1>        沒有可以執行此轉換的使用者定義轉換運算子或無法呼叫運算子

     

    另外關於CLI這方面有沒有什麼書籍或網站推薦學習的?

    手邊有C#跟C++的書,但C#又沒碰過,CLI又有新語法,搞得我一個頭兩個大。

    謝謝

     

    2010年7月14日 下午 12:21

解答

  • void InternalSendTextMessage(MSNPSharp::Contact contact){}

    ->

    void InternalSendTextMessage(MSNPSharp::Contact^ contact){}



    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP
    • 已標示為解答 scott20145 2010年7月17日 下午 12:24
    2010年7月14日 下午 03:47

所有回覆

  • 第一個問題我搞定了,這樣寫。

    private: Queue<String ^>^ msgQueue;

    第二個問題的相關資訊,還是不會.

    void InternalSendTextMessage(MSNPSharp::Contact contact){}

    屬性:MSNPSharp::ContactEventArgs::Contact

    方法:MSNPSharp::Contact
    2010年7月14日 下午 02:56
  • void InternalSendTextMessage(MSNPSharp::Contact contact){}

    ->

    void InternalSendTextMessage(MSNPSharp::Contact^ contact){}



    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP
    • 已標示為解答 scott20145 2010年7月17日 下午 12:24
    2010年7月14日 下午 03:47