Witam na studiach mam zadanie zrobić wypożyczenie Rent tak żeby Client wiedział co ma wypożyczone.
problem ten rozwiązałem wykonując oznaczoną linię kodu lecz ta linia jest odpowiedzialna za podwójne zwolnienie pamięci co owocuje błędem gdy program sprząta po sobie
czytałem o std::enable_shared_from_this lecz nie potrafię tego zastosować
metoda** Clienta addRents **jest odpowiedzialna za dodanie Rent do wektora typu shared_ptr<Rent>
Rent::Rent(std::shared_ptr<Client> cClient, std::shared_ptr<Vehicle> cVehicle, local_date_time cRentalDateTime)
: rentalDateTime{cRentalDateTime}, returnDateTime {not_a_date_time}, client(cClient), vehicle(cVehicle)
{
this->_uuid = boost::uuids::uuid(boost::uuids::random_generator()());
this-> vehicleRented=true;
client->addRents(std::shared_ptr<Rent>(this)); // linijka odpowiadająca za błąd
// this->
this->vehicle->setIsRented(true);
}