解决const_reverse_iterator的bug

This commit is contained in:
邹晓航
2014-10-24 16:50:33 +08:00
parent f8220473ef
commit 7b2f3b0b4f
5 changed files with 71 additions and 77 deletions

View File

@@ -40,7 +40,9 @@ namespace TinySTL{
//TinySTL::swap(container_, it.container_);
}
reference operator *(){ return *cur_; }
const reference operator *()const{ return *cur_; }
pointer operator ->(){ return &(operator*()); }
const pointer operator ->()const{ return &(operator*()); }
dq_iter& operator ++(){
if (cur_ != getBuckTail(mapIndex_))//+1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬһ<CDAC><D2BB>Ͱ<EFBFBD><CDB0>
++cur_;
@@ -166,7 +168,6 @@ namespace TinySTL{
public:
typedef T value_type;
typedef dq_iter<T> iterator;
typedef const iterator const_iterator;
typedef T& reference;
typedef const reference const_reference;
typedef size_t size_type;
@@ -197,11 +198,7 @@ namespace TinySTL{
deque& operator= (deque&& x);
iterator begin(){ return beg_; }
const_iterator begin() const{ return beg_; }
iterator end(){ return end_; }
const_iterator end() const{ return end_; }
const_iterator cbegin() const{ return beg_; }
const_iterator cend() const{ return end_; }
size_type size() const{ return end() - begin(); }
bool empty() const{ return begin() == end(); }