From 7c728663c6aa0a968dc4e27cc24a30e1210e387c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E6=99=93=E8=88=AA?= <1210603696@qq.com> Date: Wed, 26 Nov 2014 10:40:12 +0800 Subject: [PATCH] =?UTF-8?q?bug=20fix=EF=BC=9A=E5=B0=86=E5=87=8F1=E6=93=8D?= =?UTF-8?q?=E4=BD=9C=E6=8D=A2=E6=88=90--=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TinySTL/ReverseIterator.h | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/TinySTL/ReverseIterator.h b/TinySTL/ReverseIterator.h index 44e3c7d..b54e0b1 100644 --- a/TinySTL/ReverseIterator.h +++ b/TinySTL/ReverseIterator.h @@ -21,11 +21,16 @@ namespace TinySTL{ public: //构造。复制,析构相关 reverse_iterator_t() :base_(0), cur_(0){} - explicit reverse_iterator_t(const iterator_type& it) :base_(it), cur_(it - 1){} + //explicit reverse_iterator_t(const iterator_type& it) :base_(it), cur_(it - 1){} + explicit reverse_iterator_t(const iterator_type& it) :base_(it){ + auto temp = it; + cur_ = --temp; + } template reverse_iterator_t(const reverse_iterator_t& rev_it){ base_ = (iterator_type)rev_it.base(); - cur_ = base_ - 1; + auto temp = base_; + cur_ = --temp; }; //其他成员函数