如果front()
返回一个引用并且容器是空的,我得到一个未定义的引用?这是否意味着我需要empty()
在每个之前检查front()
?
小智 54
您得到未定义的行为 - 您需要在调用front()之前检查容器是否包含使用empty()(检查容器是否为空)的内容.
是的,您可以像 Graham 提到的那样使用“at”,而不是使用 front。
但是, at(0) 仅适用于某些容器 - 向量、双端队列,而不适用于其他容器 - 列表、队列、堆栈。在这些情况下,您必须依靠“空”支票的安全性。
归档时间: |
|
查看次数: |
21967 次 |
最近记录: |