string str = "Alice ate apples"; str.erase(0,2)
擦除功能实际上是分配新内存并复制“冰吃苹果”还是擦除功能做就地复制?
解决方法 basic_string实现具有擦除抛出异常的迭代器形式是非法的.当你提供超出范围的索引时,甚至只有擦除的索引形式会抛出.这很重要,因为分配内存是一种潜在的抛出 *** 作.因此,如果擦除不能抛出,那么它也不能分配.所以它没有.
因此,擦除必须就地进行.
总结以上是内存溢出为你收集整理的c – std :: string :: erase如何从字符串中删除字符?全部内容,希望文章能够帮你解决c – std :: string :: erase如何从字符串中删除字符?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)