vector进行pop_back操作时未检查vector是否为空,导致程序崩溃

错误代码示例

m_message是个vector<string>类型,可以看到函数内第2行pop_back代码未作任何判空操作,结果导致了程序崩溃。

笔者以为c++的vector实现在pop_back时会对size进行判断,所以就想当然pop_back了。

查了一下c++标准,空vector进行pop_back会导致未定义的行为,一定要注意。


c++标准关于pop_back的解释
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容