lleo_kaganov (lleo_kaganov) wrote,
lleo_kaganov
lleo_kaganov

Category:

Подскажите решение по C++ ?

это перепост заметки, оригинал находится на моем сайте: https://lleo.me/dnevnik/2020/02/04

Часто встречаю на Ардуино библиотеки, которые требуют инициализации в коде с заранее заданнными пинами, например:

=============== cut ===============

#include <LampDriver.h>

#define PIN1 4
#define PIN2 16

LampDriver MyLAMP1(PIN1);
LampDriver MyLAMP2(PIN2);

void loop {
  MyLAMP1.blink();
  MyLAMP2.blink();
  sleep(100);
}

=============== /cut ===============

Всё бы ничего, но в моей задаче нельзя заранее знать, сколько будет ламп (и будут ли вообще), и к каким пинам они окажутся подключены — эта информация появится лишь в процессе исполнения loop().

Соответственно, я подозреваю, что в C++ имеется на этот случай какой-то особый синтаксис. Например, вот мне подсказывали, new. Но как это правильно записать? LampDriver *MyLAMP1 = new LampDriver(4); ? И далее MyLAMP1.blink(); будет работать? У меня всякие ошибки сыпятся.



это перепост заметки, оригинал находится на моем сайте: https://lleo.me/dnevnik/2020/02/04
Tags: #define, #include
Subscribe

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your IP address will be recorded 

  • 0 comments