diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2009-02-12 13:44:34 +0000 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2009-02-12 13:44:34 +0000 |
| commit | b8b6b5c56890122c182c035406457ae7a5791f6a (patch) | |
| tree | d14084200913324948bdf5485c176e71d6717abd /src/array_fun.h | |
| parent | a73ef15904a8428d7e979aef419111f30fc12800 (diff) | |
2009-02-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added array_wrapper template.
* src/array_fun.h
* test/array_funTest.cc
Diffstat (limited to 'src/array_fun.h')
| -rw-r--r-- | src/array_fun.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/array_fun.h b/src/array_fun.h index 157456fb..6aac4d6c 100644 --- a/src/array_fun.h +++ b/src/array_fun.h @@ -262,6 +262,39 @@ public: } }; +template<typename T, size_t N> +class array_wrapper { +private: + T _array[N]; +public: + array_wrapper() {} + + T& operator[](size_t index) + { + return _array[index]; + } + + const T& operator[](size_t index) const + { + return _array[index]; + } + + operator T*() + { + return _array; + } + + operator const T*() const + { + return _array; + } + + size_t size() const + { + return N; + } +}; + } // namespace aria2 #endif // _D_ARRAY_FUN_H_ |
