#include <iostream>
#include <type_traits>
#include <vector>
#include <string>
#include <functional>
#include <map>
#include <algorithm>
#include <sstream>
#include <set>
#include <unordered_map>
using namespace std;
class Car
{
public:
Car(){}
virtual void method1(){};
};
class Toyota : public Car
{
public:
Toyota(){}
void method1(){};
};
class Lada : public Car
{
public:
Lada(){}
void method1();
};
class User
{
public:
//-----------vvvv---------------------->added this parameter
User(Car& pCar):car(pCar){}
//----------v-------------------------->make car a Car&
Car &car;
};
int main()
{
Toyota toyota;
//-------------vvvvvv-------->pass as argument
User user(toyota);
}