Вы также можете использовать option_context с одним или несколькими параметрами:
with pd.option_context('display.max_rows', None, 'display.max_columns', 3):
print(df)
Это автоматически вернет параметры к их предыдущим значениям.
Дополнение: Если вы работаете над jupyter-notebook, использование display
вместо print
будет использовать богатую логику отображения jupyter.
В вашем классе Led
у вас есть controller
в качестве поля, и вы не инициализируете его, а используете присваивание ему в теле конструктора Led
, поэтому сначала его нужно создать по умолчанию. Решением может быть инициализация и создание копии:
Led::Led(int Pin, i2cController &Controller) :
controller( Controller ),
pin( Pin )
{
}
, тогда ваша проблема должна исчезнуть
Проблема из конструктора класса 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)
{}