取决于断开连接的外观。像这样的东西可能会做你想做的事(假设 eDC_Kicked 是某种类状态)
void Disconnect(Status _status, std::string _reason) {
// Do disconnect things
...
// Print message
std::cout << _reason << std::endl;
}
但是,在发送它执行函数之前,您仍然必须构造您的字符串(例如,使用字符串流):
if (ping < 500)
{
float data = pNetChannel->GetPing(true);
std::ostringstream oss;
oss << data;
std::string ping(oss.str());
std::string reason = "High ping: " + ping;
pNetChannel->Disconnect(eDC_Kicked, reason);
}
或者,如果有意义,您可以以这种方式编写Disconnect (并将字符串“High Ping:”和浮点值分别传递给它):
void Disconnect(Status _status, std::string _message, float _value) {
// Do disconnect things
...
// Print message
std::cout << _message << " " << _value << std::endl;
}
但是,如果您每次都没有确切的一条消息和一个变量等,这可能是不可取的。此外,如果您愿意,您可以使用printf进行打印。