これは私のコードです:
#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;
その後、プログラムは正常にビルドおよび実行されます。
その「カウト」を成功させるにはどうすればよいですか?