【发布时间】:2020-09-16 11:39:39
【问题描述】:
我有以下课程:
public:
Client(tcp::socket socket)
: socket_(std::move(socket))
{
}
void start();
int connectionId;
比我有以下向量:
class Server {
public:
Server();
static std::vector<std::shared_ptr<Client>> Clients;
}
编辑*
我可以这样做吗:
for (int i = 0; i < Server::Clients.size(); ++i) {
if(Server::Clients[i]->connectionId == connectionId)
Server::Clients.erase(Server::Clients.begin()+i);
}
我的问题是如何使用特定的connectionId 也就是按值删除来删除Clients 中的共享指针?
【问题讨论】:
标签: c++ vector shared-ptr