6

stringstream に問題があります。私のビジュアル スタジオも Linux g++ も stingstream を理解できません。sstream を追加しましたが、何も解決しません。私は以前にそれを使ったことがありますが、今はどうなっているのか本当にわかりませんか?

#include <sstream>
#include <stdlib.h>
#include "SymbolTable.cpp"
#include "setjmp.h"
using namespace std;
jmp_buf *bfj;
int TOP , SP=3 ;
struct types{int int_val;float float_val;char char_val;bool bool_val;};

types DS[6400];
int main(){
...//some code here
label38 : stringstream s;
label39 : bfj = (jmp_buf *)"label65";
label40 : longjmp(*bfj,1);;
label41 : goto label43;
label42 : TOP=SP;
//some code here
}

私はコンパイラを書いているので、コードは出力です。

4

2 に答える 2

14

含める場合は#include <sstream>、次の方法でもクラスを参照する必要があります。

std::stringstreamusing namespace std;またはそれを使用する前に宣言します。

より多くの情報を投稿していただければ、より詳細なヘルプを提供できます。

于 2010-06-21T17:36:33.200 に答える
2

このコードは、G++ で正常にコンパイルされます。

#include <sstream>
#include <stdlib.h>
#include "setjmp.h"
using namespace std;
jmp_buf *bfj;
int TOP , SP=3 ;
struct types{int int_val;float float_val;char char_val;bool bool_val;};

types DS[6400];
int main(){
label38 : stringstream s;
label39 : bfj = (jmp_buf *)"label65";
label40 : longjmp(*bfj,1);;
label41 : goto label43;
label42 : TOP=SP;
label43 : (void)0;
//some code here
}

唯一の違いは、 を削除#include "SymbolTable.cpp"して を追加したことlabel43です。

どうやら、うまくいかない場合は、省略したコードの一部に問題があるようです。部品//some code hereまたはSymbolTable.cpp

もちろん、cpp ファイルを含めていることも非常に疑わしいようです。それはおそらくエラーです。

于 2010-06-21T17:57:33.220 に答える