2012-03-24 28 views
2

嗨,我是compilinig VS2008中的C++解決方案。爲什麼我們得到構建錯誤「錯誤C2065:'ostringstream':未聲明的標識符」&如何解決這個問題?

ostringstream  strout; 

我收到編譯錯誤 「錯誤C2065:ostringstream」:未聲明的標識符「。

我覺得我已經包含了所有必要的頭文件。

任何人都可以讓我知道如何解決這個錯誤(什麼所有頭文件包含)?

此外,我得到一個奇怪的錯誤,如「錯誤C2146:語法錯誤:缺少';'之前標識符'strout'「在同一行。

雖然我知道我沒有錯過「;」分號錯誤正在被拋出。

在此先感謝。

+0

您需要包含'',並且添加'using namespace std;'或者用'sed ::'明確限定名稱(即使用'std :: ostringstream')。 – dasblinkenlight 2012-03-24 09:23:03

+0

字符串流在標頭''中。 – 2012-03-24 09:24:46

回答

6

除非您向我們展示,否則我們無法確定您的代碼有什麼問題。

但是你可以用以下以及如何做到這一點的例子:

#include <iostream> 
#include <sstream> 

int main() { 
    std::ostringstream oss; 
    oss << "Hello"; 
    std::cout << oss.str() << '\n'; 
    return 0; 
} 

可能的原因是您沒有實際上包括所有所需的頭文件,這是爲什麼它不會識別ostringstream

這就是缺乏識別可能導致丟失的分號錯誤。

8

您需要

#include <sstream> 

,並限定名稱std::ostringstream

+0

謝謝你。我也曾使用這是拋出一組差錯。現在我沒有使用後綴「.h」,它工作正常。 – codeLover 2012-03-24 10:35:28

相關問題