C ++: передача ссылки на объект в качестве параметра приводит к ошибке: нет соответствующей функции для вызова class :: function () [closed]

Вы также можете использовать option_context с одним или несколькими параметрами:

with pd.option_context('display.max_rows', None, 'display.max_columns', 3):
    print(df)

Это автоматически вернет параметры к их предыдущим значениям.

Дополнение: Если вы работаете над jupyter-notebook, использование display вместо print будет использовать богатую логику отображения jupyter.

-2
задан Rick vm 5 March 2019 в 18:54
поделиться

2 ответа

В вашем классе Led у вас есть controller в качестве поля, и вы не инициализируете его, а используете присваивание ему в теле конструктора Led, поэтому сначала его нужно создать по умолчанию. Решением может быть инициализация и создание копии:

Led::Led(int Pin, i2cController &Controller) :
    controller( Controller ),
    pin( Pin )
{
}

, тогда ваша проблема должна исчезнуть

0
ответ дан Slava 5 March 2019 в 18:54
поделиться

Проблема из конструктора класса Led. Конструктор пытается инициализировать поле по умолчанию i2cController controller;. Конструктор также ищет конструктор i2cController по умолчанию без параметров, который не определен.

Если вам нужна ссылка, сделайте это следующим образом.

class i2cController
{
private:
  int foo;

public:
  explicit i2cController(int Foo)
     foo(Foo) 
  {}
  void write(int value);
};

class Led
{
Led(Led&) = delete;
Led& operator=(Led&) = delete;
private:
  i2cController &controller;
  int pin;

public:
  Led(int pin, i2cController &Controller);
  ~Led() noexcept;
  void turnOn();
};

Led::Led(int Pin, i2cController &Controller)
  controller(Controller),
  pin(Pin)
{}
Led::~Led() noexcept
{}

Если вам нужна копия

class Led
{
private:
  i2cController controller;
  int pin;

public:
  Led(int pin,const i2cController &Controller);
  void turnOn();
};

Led::Led(int Pin,const const i2cController &Controller)
  controller(Controller),
  pin(Pin)
{}
0
ответ дан Jordon Lee 5 March 2019 в 18:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: