Я использую Visual C++ 2008. Я не могу использовать pop_back
потому что он стал функцией-членом класса string в C++ 11.
Что я могу использовать вместо этого, поскольку не могу использовать pop_back
?
Вы можете использовать std::string::erase
, который я лично нахожу немного более понятным семантически, чем альтернатива resize
:
if (!s.empty())
s.erase (s.size()-1);
Вы можете использовать std::string::resize
:
if (!s.empty())
s.resize(s.size()-1);
Я не совсем понял ваш вопрос, но если вы хотите добавить что-то в std :: string, вы можете использовать
и если вы хотите "сжать" его, вы можете использовать
Есть как минимум две возможности. Либо использовать стирание функции члена, либо изменить размер члена. например
s.erase( s.size() - 1 );
или
s.resize( s.size() - 1 );
Если вы не хотите использовать push_back, вы можете заменить его на оператор + или добавить функцию-член.