Назначение объекта - недопустимое использование ошибки функции-члена

мы также можем использовать

(.*?\n)*?

для соответствия всем, включая новую строку без жадного

. Это сделает новую строку опцией

(.*?|\n)*?
1
задан Marshall Eubanks 13 July 2018 в 19:13
поделиться

2 ответа

Итак, проблема заключалась в объявлении объекта сервера.

Первоначально я заявлял следующее:

EthernetServer ArduinoTcpServer(22);

Но я бы получил ошибку о «ожидаемом Идентификатор перед числовой константой ", ссылаясь на 22. Таким образом, я искал его и нашел, что кто-то предлагает, что (в некотором контексте я не помню) указание только этого типа было достаточным, чтобы вызвать конструктор, соответствующий этому прототипу. Это позволило компилятору продолжить работу, поэтому я предположил, что это действительно так. Однако, похоже, это не так.

Реальная проблема заключается в том, что для использования в компиляторе Arduino IDE требуется инициализация брекетов, например

EthernetServer ArduinoTcpServer{22};

Это похоже на работу.

0
ответ дан Marshall Eubanks 17 August 2018 в 12:12
поделиться

EthernetServer ArduinoTcpServer(uint16_t); объявляет функцию-член с именем ArduinoTcpServer. Чтобы объявить переменную-член, опустите тип параметра и круглые скобки. Также добавьте конструктор для инициализации переменной-члена, например. :

class LinxArduinoEthernetListener : public LinxListener
{
    public:
        EthernetServer ArduinoTcpServer;

        LinxArduinoEthernetListener(uint16_t port)
        : ArduinoTcpServer(port)
        {
        }
};
2
ответ дан Sid S 17 August 2018 в 12:12
поделиться
  • 1
    Спасибо, я пытался запомнить, как это сделать, но мой google-fu не смог меня. – Marshall Eubanks 13 July 2018 в 19:39
Другие вопросы по тегам:

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