类型:转载 责任编辑:asp.net 日期:2007/05/23
热门软件下载:
rt
谢谢
网友回答:
STL遵循的是前开后闭的原则
为了方便。比如查找,查不到就返回end(),如不是这样,让end()指向最后一个元素,你说找不到时怎么处理呢?
我看做好是去看看c++的发展史,里面讲了其语法的来龙去脉。
这也许和旧时的c也有关系。c的区间都是半开半避的。如:
for(int i = 0; i < 10; ++i)
这里的i就是这种情况
主要还是来自 C 的字符串约定。const char * a = "Hello"; 里面,a 的 begin() 指向 H,是字符串的内容;而 a 的“末尾”约定为 \0,已经不是字符串的内容,也就是所谓的“半开半闭原则”