其他分享
首页 > 其他分享> > c – str.clear()和str =“”之间的区别

c – str.clear()和str =“”之间的区别

作者:互联网

我有一个C std :: string str我已设置为某个字符串,现在想要重置,以便可以再次使用它.调用str.clear()vs str =“”之间有区别吗?

编辑.澄清一下:我通过在它上面添加一个char数组缓冲区来重用str:str.append(buf)

解决方法:

没有有效的区别.根据实现,使用clear()可能比分配给零的char指针更快.但即使不是这种情况,也更喜欢更明确表达意图的方法.如果要清除字符串,请使用clear().如果要分配空字符串,请使用=“”.

虽然我会注意到,但你说,“所以我可以再次使用它.”再用一次呢?如果您只是将其分配给其他东西,则无需事先清除它.

标签:c,string,stdstring,c-standard-library
来源: https://codeday.me/bug/20190824/1704369.html