我正在按照此代码进行修剪
std::string tcp_read(int listen_at_port=8001){
using namespace std;
using namespace boost::algorithm;
std::vector<char> received_data(512);
tcp_read(received_data, listen_at_port);
string str1(received_data.begin(),received_data.end());
trim_right(str1);
return str1;
}
我单步执行了代码,我的 received_data 通常为 =“添加 8002(此处缓冲区填充有空格,直到 [511th] 位置)”
现在当我做 trim_right 时,我预计 str1 的大小会变成 8,但是当它返回时它仍然是 512,为什么?
我如何实际修剪并更改大小,以便字符串可以容纳到最后一个非空格字符