指针在C和C++的微妙区别
高洛峰
高洛峰 2016-11-08 12:48:44
0
1
611

在C语言中,对于指针,有效而正确的用法是保证他指向同一数组的元素或数组最后一个元素后端的元素(past-end-one),但在C++中由于“逆迭代器”的引入,只是他可以指向数组第一个元素前一端的元素(past-start-one).如:rend()== begin()-1;我想问的是为什么他要这样设计,打破C语言习惯有什么更大的好处

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

reply all(1)
三叔

方便你反向循环访问啊。
for (it = x.rbegin(); it != x.rend(); --i)
因为每趟循环后要先进行--i,再判断是不是等于rend()。
不能让it指向第一个元素就停止循环,那样第一个元素就没有被遍历到了。

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template