error: expected primary-expression before ')' tokenx86-64 gcc 13.2 #Executor 1

Пишу код про гараж, в котором есть машины.

#include <cmath>
#include <iostream>
#include <string>
#include <list>
#include <vector>
#define maxCars 10;
struct Car
{
    std::string maker;
    std::string color;
    int number;
    int run;
    void print()
    {
        std::cout << maker <<std::endl;
        std::cout << color <<std::endl;
        std::cout << number <<std::endl;
        std::cout << run <<std::endl;
    }
    void beep()
    {
        std::cout << "beep" << std::endl;
    }
};
class Garage {
private:
    std::vector<Car> cars;
 
public:
    void addCar(Car car) 
    {
        if (cars.size() < maxCars)
        {
            cars.push_back(car);
        } else {
            std::cout << "Мест нет, идите на улицу >;)." << std::endl;
        }
    }
 
    void removeCar(int id) {
        for (auto it = cars.begin(); it != cars.end(); ++it) {
            if (it->number == id) {
                cars.erase(it);
                return;
            }
        }
        std::cout << "машины с номером " << id << ", нету такой." << std::endl;
    }
 
    void takeARide(int id, int distance) {
        for (auto& car : cars) {
            if (car.number == id) {
                car.run += distance;
                car.beep();
                return;
            }
        }
        std::cout << "машины с номером " << id << ", нету такой." << std::endl;
    }
 
    void print() {
        for (auto& car : cars) {
            car.print();
            std::cout << std::endl;
        }
    }
};
int main() {
    Garage garage;
 
    Car car1 = {"Toyota", "Red", 10000, 1};
    Car car2 = {"Honda", "Blue", 20000, 2};
    Car car3 = {"Ford", "Green", 15000, 3};
 
    garage.addCar(car1);
    garage.addCar(car2);
    garage.addCar(car3);
 
    garage.print();
 
    garage.takeARide(2, 500);
    garage.removeCar(1);
 
    garage.print();
 
    return 0;
}

В 32 строчке ругается на ошибку в заголовке.


Ответы (1 шт):

Автор решения: Harry

Вы пишете:

#define maxCars 10;

Значит,

    if (cars.size() < maxCars)

превращается в

    if (cars.size() < 10; )

Дальше пояснять не надо?

→ Ссылка