当 a std::stringis""或 vector 没有元素时,begin()等于end()?
如果是这样,begin()/的值是end()多少?
当 std::string 为 "" 或向量没有元素时,begin() 是否等于 end()?
是的,对于任何空的标准库容器,包括std::stringand std::vector,begin()都将返回与end().
如果是这样,begin()/end() 的值是多少?
它将是该容器独有的迭代器,但不应取消引用。这样做会导致未定义的行为。
是的。任何没有元素的 STL 容器类型都将具有begin() == end(),因为元素的范围是半开范围 [ begin(), end())。
希望这可以帮助!