Проблемы с библиотекой (arduino)

280
09 августа 2017, 20:19

Есть библиотека:
DynamicCollection.h
DynamicCollection.cpp
При компиляции всё нормально.
Но, вот такой код:

#include <DynamicCollection.h>
DynamicCollection<int> DColl();
void setup()
{
  DColl.Add(1);
}
void loop() {}  

Почему-то выдаёт ошибку:

sketch_aug06a:7: error: request for member 'Add' in 'DColl', which is of non-class type 'DynamicCollection<int>()'  
DColl.Add(1);
     ^
exit status 1
request for member 'Add' in 'DColl', which is of non-class type 'DynamicCollection<int>()'

Почему так?

Answer 1

DColl объявляет функцию без параметров, возвращающую DynamicCollection<int>, а вовсе не объект. Нужно убрать пустые круглые скобки:

DynamicCollection<int> DColl;

Подробности можно найти по фразе "most vexing parse".

READ ALSO
Boost::asio потеря пакетов по TCP

Boost::asio потеря пакетов по TCP

Имеется клиент-серверное приложениеСервер передает сообщения клиенту, число отправленных сообщений фиксируется

350
Gstreamer c++ ошибка &#39;G_IS_OBJECT (object)&#39; failed

Gstreamer c++ ошибка 'G_IS_OBJECT (object)' failed

Есть батник принимающий видео трансляцию по RTP средствами gstreamerПытаюсь написать программу, которая делал бы тоже самое, что бы не было нужды...

345
Контейнер &lt;set&gt; C++

Контейнер <set> C++

Возникла задача, в которой надо обращаться с двумя соседними элементами множества setТакой вопрос: как это сделать? Гуглил, нигде не нашел...

354
Не работает программа?

Не работает программа?

Есть данная программа которая работает с принтером, проблема заключается в том что при попытке прочитать с ком порта ничего не происходит,...

393