2016-03-28 13 views
-1
#include <iostream> 
#include <string> 
#include <sstream> 
#include <string> 

int coins = 0; 
std::stringstream ss; 
ss << 100 << ' ' << 200; 

を使用しているとき、私はssの上に置くと、私はエラーが「宣言は何のストレージ・クラスまたはタイプ指定を持っていません」を取得し、私は<<にカーソルを合わせると、私は取得エラー「宣言には、ストレージクラスや型の指定子がありません」エラーは、「;を期待C++は関数外で実行文を許可していませんにstringstream

+0

(あなたが強く、グローバル変数を持っていない検討すべきであるが)、あなたはそのような宣言を持つことができますが、*コード*( 'SS << 100 <<「」<< 200;')関数内である必要があります。 – crashmstr

+0

これはあなたの実際のコードは、それがされていないのですか? – NathanOliver

+0

ありませんが、それは誤り – TheKian

答えて

3

最初の2行は宣言されている;。。。それらが許可されている、私はあなたが意図的にそれらがグローバル作っていることを疑うが、最後の行を、しかし、 、plaでなければなりません例えば、関数内CED main

int main() { 
    int coins = 0; 
    std::stringstream ss; 
    ss << 100 << ' ' << 200; 
} 
+0

目的にグローバル作ったが、おかげであった唯一のビットです – TheKian

1

これらは、関数の外であってもよい:

int coins = 0; 
std::stringstream ss; 

しかし、これはできません:だから

ss << 100 << ' ' << 200; 

main()または他の関数の中に置きます。

関連する問題