我不斷收到這個錯誤在控制檯:空引用異常C++
未處理的異常信息:System.NullReferenceException
下面的代碼:
class Car {
public:
int X;
int Y;
};
class SpecificCar : public Car {
};
class Container {
public:
int AmountOfCars = 0;
Car **cars = nullptr;
void AddCar(Car *ptr);
};
void Container::AddCar(Car *ptr) {
if(AmountOfCars == 0) {
cars[0] = ptr; //Debbuger says that the problem in question is located here
AmountOfCars++;
}
int main() {
Container container;
Car *ptr = new SpecificCar;
ptr->X = 1;
ptr->Y = 5;
container.AddCar(ptr);
}
'cars'爲null,但您正在嘗試使用它。忘記指針廢話並使用'std :: vector'。 – emlai
這就是這件事的全部重點。我不想使用矢量。 – ElChupa
然後你需要爲'cars'分配一些內存來指向。 – emlai