清除前检查矢量?

问题描述 投票:1回答:2

我不确定,但我想我已经读过,如果向量不为空,则只应删除它。因此,现在我总是在删除向量之前进行检查:

if (!vector.empty()) {
    vector.clear();
}

但是,我再也找不到关于此步骤是否必要的任何信息。

是否禁止在空向量上使用clear

c++ vector stl
2个回答
4
投票

不需要支票,

并降低IMO的可读性。>


0
投票

确实,有一个issue与未定义的行为有关,同时清除了一个空序列或关联容器,但是现在已修复,并且在以前检查std::vector::clear without

© www.soinside.com 2019 - 2024. All rights reserved.