C++ illegal in base/member initializer list

229
05 августа 2017, 04:42

Возникает ошибка illegal in base/member initializer list при объявлении переменных в конструкторе. Либо я не понимаю как это работает.

.cpp

DroneConnection::DroneConnection( void )
    :SLEEP_BETWEEN_POLLS_MS (1000)
    :TIMEOUT (5)
{
    {
    m_port = 0;
    getDataFromXml();
    m_wasDataRecieved.store( false );
    m_continueRecieving.store( false );
    }
}

.h

...
private:
    const int SLEEP_BETWEEN_POLLS_MS;
    const int TIMEOUT;
    const int TIMEOUT_MS;
...

Компилятор показывает так же примичание expected {' на :TIMEOUT (5)

P.S. Не кидайтесь тапками.. все еще в изучении и понятии языка...

Answer 1

Здесь нужна запятая вместо двоеточия. Двоеточие отделяет список инициализации от имени конструктора. Элементы списка разделяются запятыми.

DroneConnection::DroneConnection( void )
    :SLEEP_BETWEEN_POLLS_MS (1000),
    TIMEOUT (5) {...}
READ ALSO
Structured bindings

Structured bindings

Стандарт C++17 вводит новый элемент синтаксиса под названием structured bindingsВ скором времени применение этой фичи может стать широко распространённым...

286
С++ исключение при рекурсии [требует правки]

С++ исключение при рекурсии [требует правки]

Ошибка при рекурсиb, когда входное число больше или равно +-5000, как исправить?

239
Приём сообщений в HID API

Приём сообщений в HID API

Доброго времени сутокПишу программу для Raspberry Pi 3 в Qt Creator для взаимодействия с HID-устройствами, используя библиотеку HID API

348
response при post-запросе

response при post-запросе

в ajax методом POST передаю данные регистрации, в js файле проверяю набранные пароли и хочу с помощью responsesend отправить сообщение об ошибке, но ничего...

278