创建sslstreams的向量

时间:2014-01-26 19:54:47

标签: c++ boost boost-asio

为了延迟起见,我正在尝试生成一些已经执行连接和握手的套接字以节省几毫秒。当我尝试使用“push_back”将新的ssl流放到向量上时,我得到“描述位置资源路径类型” 'boost :: asio :: basic_io_object :: basic_io_object(const boost :: asio :: basic_io_object&)[with IoObjectService = boost :: asio :: deadline_timer_service>]'是专线163,外部位置:/ boost / boost_1_55_0 / boost / asio / basic_io_object.hpp Test3 C / C ++问题“

void QueueSocket() {    

    using namespace boost::network;

    boost::system::error_code ec;

    using boost::asio::ip::tcp;
    namespace ssl = boost::asio::ssl;
    typedef ssl::stream<tcp::socket> ssl_socket;


std::vector<boost::asio::io_service> vecStreams;
vecStreams.emplace_back();

}

1 个答案:

答案 0 :(得分:0)

std::vector拥有其元素,这意味着它会尝试移动或复制新值。 <{1}}不是临时的,因此不会被移动,也无法复制。

在这种情况下,我认为移动它很好 - 无论如何你都不会在push_back之后使用sockconn。所以:sockconn