2012-04-30 13 views
1

我有多重映射聲明:將Multimap值從int轉換爲字符串?

typedef multimap <int, std::string> MM; 

我遇到了麻煩,這樣做我怎麼正常,沒有運氣這麼用這種方法,我發現在網上做:

std::string IntToStr(int n) 
    { 
    std::stringstream result; 
    result << n; 
    return result.str(); 
    } 

然後我把它傳遞我多圖的int值:

std::string stringNumber = IntToStr((*i).first); 

什麼我回來是位內存位置我想,和int轉換標記到該像的結尾:

64D20D6017 

其中17是得分。我究竟做錯了什麼?我想要做的就是將結果轉換爲稍後使用的字符串。

+0

你肯定在I->第一_is_ 17的實際數量? – Attila

+0

是的,如果我要說cout <<(* i).first << endl;我會得到「17」 –

+4

[Works fine here](http://ideone.com/j96Mo),您沒有向我們顯示的代碼中一定有錯誤。 – ildjarn

回答

3

只是櫃面沒有人得到了類似的輸出,這是由於意外增加2 cout到行:

cout << variable1 << cout << variable2;