好的,这是我的代码:
#include <iostream>
using namespace std;
class Nodo{
public:
Nodo *siguiente,*anterior;
string Nombre,Curso,Posicion;
int carnet;
Nodo(){
siguiente=anterior=NULL;
Nombre=Curso="";
carnet=0;
}
};
class ListaCircular{
public:
Nodo *PrimerNodo,*UltimoNodo;
ListaCircular(){
*PrimerNodo->siguiente=*UltimoNodo;
}
};
int main(){
ListaCircular *a=new ListaCircular();
cout<<a->PrimerNodo->siguiente<<endl;
return 0;
}
当我尝试运行它时,它显示“BUILD SUCCESSFUL”但“RUN FAILED”,当我调试它时出现 SIGSEGV 消息,似乎有错误的行是:
*PrimerNodo->siguiente=*UltimoNodo;
但是如果我再次运行程序而没有这些行:
ListaCircular *a=new ListaCircular();
cout<<a->PrimerNodo->siguiente<<endl;
然后程序成功构建并运行。
我怎样才能使那个“cout”成功?