我创建了一个Windows窗体项目,但是我在列表中显示元素时遇到问题,列表是托管类的一部分。以下是一些理解我的问题所必需的代码:
Bazadanych.h
public ref class Bazadanych
{
public:
cliext::list<Car^> Bazatorent;
cliext::list<Rented^> Bazarented;
cliext::list<Unavaible^> Bazaunavaible;
cliext::list<Car^>::iterator it1;
cliext::list<Rented^>::iterator it2;
cliext::list<Unavaible^>::iterator it3;
Bazadanych()
{
it1=Bazatorent.begin();
it2=Bazarented.begin();
it3=Bazaunavaible.begin();
};
bool Empty();
void Dodaj1(Car^);
void Dodaj2(Rented^);
void Dodaj3(Unavaible^);
void Usun1(cliext::list<Car^>::iterator);
void Usun2(cliext::list<Rented^>::iterator);
void Usun3(cliext::list<Unavaible^>::iterator);
void Czysc();};
Bazadanych.cpp
bool Bazadanych::Empty()
{
if((Bazatorent.empty()==true)&&(Bazarented.empty()==true)&&(Bazaunavaible.empty()==true)) return(true);
else return(false);
};
void Bazadanych::Dodaj1(Car^ Element)
{
this->Bazatorent.push_back(Element);
};
void Bazadanych::Dodaj2(Rented^ Element)
{
this->Bazarented.push_back(Element);
};
void Bazadanych::Dodaj3(Unavaible^ Element)
{
this->Bazaunavaible.push_back(Element);
};
void Bazadanych::Usun1(cliext::list<Car^>::iterator it1)
{
this->Bazatorent.erase(it1);
};
void Bazadanych::Usun2(cliext::list<Rented^>::iterator it2)
{
this->Bazarented.erase(it2);
};
void Bazadanych::Usun3(cliext::list<Unavaible^>::iterator it3)
{
this->Bazaunavaible.erase(it3);
};
void Bazadanych::Czysc()
{
this->Bazatorent.clear();
this->Bazarented.clear();
this->Bazaunavaible.clear();
};
Car.h
public ref class Car
{
public:
String^ category;
String^ model;
String^ rocznik;
String^ cena;
Car(){};
Car(String^ ,String^ ,String^ );
void edytuj(String^ ,String^ ,String^ );
String^ getmodel(){return this->model;};
String^ getrocznik(){return this->rocznik;};
String^ getcena(){return this->cena;};
virtual String^ getcat()
{
this->category="To rent";
return this->category;
};
};
在Bazatorent列表中添加一些元素后,我尝试在form1.h中执行,执行类似这样的事情
Bazadanych^ Bazowa = gcnew Bazadanych;
.
.
.
richTextBox1->Text=Bazowa->it1->display();
在那一刻我得到了未处理的异常。我认为问题是添加元素方法,但我检查了size(),列表正在获取新元素。