Meddelande

Minska
No announcement yet.

Identifier "Prev" is undefined.

Minska
X
  • Filter
  • Klockan
  • Show
Clear All
new posts

  • Identifier "Prev" is undefined.

    Jag har en class som heter Car som fixar ser ut så här:
    Kod:
    class Car
    {
    public:
    	Car* PreviousCar;
    	Car* NextCar;
    	char LicensePlate[10]; // Licenseplate of the car, used as unique identifier
    
    	// Date and time of arrival to the garage
    	char ArrivalDate[9];
    	char ArrivalTime[9];
    		// Date and time of departure from the garage
    	char DepartureDate[9];
    	char DepartureTime[9];
    Lite senare har jag en funktion som ser ut så här:
    Kod:
    void RemoveCar() // A car departs from the garage
    {
    	cout << "Enter licence plate number: ";
    	char LicPlate[10];
    	cin >> LicPlate;
    	Car* C = FirstCar;
    	bool carDeleted = false;
    	while(C != 0)
    	{
    		if(strcmp(C->LicensePlate, LicPlate) == 0)
    		{
    			C* Prev = C->PreviousCar;
    			C* Next = C->NextCar;
    			if(Prev != 0)
    			{
    				Prev->NextCar = C->NextCar;
    			}
    			if(Next != 0)
    			{
    				Next->PreviousCar = C->PreviousCar;
    			}
    			if(FirstCar == C)
    			{
    				FirstCar = Next;
    			}
    			delete C;
    			C = 0;
    			carDeleted = true;
    		}
    		else
    		{
    			C = C->NextCar;
    		}
    	}
    	if(carDeleted != true)
    	{
    		cout << "Could not remove car with licence plate numer \"" << LicPlate << "\", ar not found in database!" << endl;
    	}
    }
    Jag får felmeddelande om att "Prev" och "Next" i funktionen "RemoveCar" är odefinierade (fet text).
    Saken är den att jag har i stort sett tagit fungerande kod och döpt om klasser, variabler och funktionsnamn. Innan jag gjorde dessa ändringar av namn på saker och ting så fungerade allting utmärkt.

    Det skall tilläggas att jag fortfarande är väldigt ny på C++ och har lite för mycket VB-tänk kvar.

    Någon som har tips på lösning och gärna en förklaring till vad som är fel (undervisning och konstruktiv kritik är aldrig fel).
    Last edited by SilvioF; 2010-05-28, 07:37. Anledning: Fixade typos.
    ~~~ www.fumei.net ~~~

  • #2
    Borde de inte stå:
    Kod:
    Car* Prev = C->PreviousCar;
    Car* Next = C->NextCar;

    Kommentera

    Working...
    X