From e3124e599dd7ac0924c46a87906326a013c873c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E6=99=93=E8=88=AA?= <1210603696@qq.com> Date: Mon, 19 Jan 2015 11:32:05 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0operator[]=E6=93=8D=E4=BD=9C?= =?UTF-8?q?=E7=9A=84const=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TinySTL/Vector.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/TinySTL/Vector.h b/TinySTL/Vector.h index 5a1d641..9b6a691 100644 --- a/TinySTL/Vector.h +++ b/TinySTL/Vector.h @@ -71,9 +71,10 @@ namespace TinySTL{ void shrink_to_fit(); //访问元素相关 - value_type& operator[](const difference_type i){ return *(begin() + i); } - value_type& front(){ return *(begin()); } - value_type& back(){ return *(end() - 1); } + reference operator[](const difference_type i){ return *(begin() + i); } + const_reference operator[](const difference_type i)const{ return *(cbegin() + i); } + reference front(){ return *(begin()); } + reference back(){ return *(end() - 1); } pointer data(){ return start_; } //修改容器相关的操作