socket.io почему assert (false) - PullRequest
0 голосов
/ 12 марта 2019

Я разрабатываю программу на C ++ для связи через Socket.IO, и я ссылаюсь на пример консоли . В строке 77-78 у нас есть следующие утверждения:

string user = data->get_map()["username"]->get_string();
string message = data->get_map()["message"]->get_string();

Если я перейду к sio_message.h в строке 101, у нас есть определение метода карты, как показано ниже. В строке 103 это оператор assert(false), который вызывает сбой моей программы. Может ли кто-нибудь просветить меня, почему это assert(false) утверждение присутствует.

virtual std::map<std::string,message::ptr>& get_map()
{
     assert(false);  ///why this???
     static std::map<std::string,message::ptr> s_empty_map;
     s_empty_map.clear();
     return s_empty_map;
}

Мой код:

void Socket_IO::receive_listener(std::string const&name, sio::message::ptr const& data, bool hasAck, sio::message::list &ack_resp)
{

    spdlog::info("Data Recieved : " + data->get_map()["message"]->get_string()); // I am getting an Socket.IO exception here
    spdlog::info("Message Name : " + name);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...