У меня есть проблема с stringstream.my Visual Studio, ни Linux g ++ может понять stingstream. Я добавил поток, но он does'nt решает что-либо. Я работал с ним прежде и действительно не знаю то, что произошло с ним теперь?
#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
}
Я пишу компилятор, таким образом, код является выводом, вот почему он может немного нечетные швы.
Если вы включаете #include
, тогда вы также должны ссылаться на класс с помощью:
std :: stringstream
или объявить с использованием пространства имен std;
перед его использованием.
Если вы разместите дополнительную информацию, мы сможем предоставить более подробную помощь.
Этот код отлично компилируется для меня под 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
.
Очевидно, если это не сработает для вас, проблема в некотором коде, который вы пропустили. // некоторый код здесь
или в SymbolTable.cpp
Конечно, очень кажется подозрительным, что вы включаете файл cpp. Скорее всего, это ошибка.