我正在使用Visual C ++ 2008.我无法使用pop_back
,因为它成为C ++ 11中字符串类的成员函数。
我可以使用哪些内容,因为我无法使用pop_back
?
答案 0 :(得分:6)
你可以使用std::string::erase
,我个人觉得它比resize
替代方案在语义上更清晰:
if (!s.empty())
s.erase (s.size()-1);
答案 1 :(得分:5)
您可以使用std::string::resize
:
if (!s.empty())
s.resize(s.size()-1);
答案 2 :(得分:1)
答案 3 :(得分:1)
至少有两种可能性。要么使用成员函数擦除,要么使用成员函数调整大小。例如
s.erase( s.size() - 1 );
或
s.resize( s.size() - 1 );
如果您不想使用push_back,则可以将其替换为operator +或member function append。