Changeset 323 for trunk/nv/core/array.hh
- Timestamp:
- 08/26/14 04:03:10 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/nv/core/array.hh
r319 r323 16 16 #include <nv/core/common.hh> 17 17 #include <vector> 18 #include <algorithm> 18 19 #include <array> 19 20 20 21 namespace nv 21 22 { 22 namespace detail23 {24 template < typename T >25 class array_base26 {27 public:28 typedef T value_type;29 typedef T* iterator;30 typedef const T* const_iterator;31 typedef T& reference;32 typedef const T& const_reference;33 typedef std::size_t size_type;34 typedef std::ptrdiff_t difference_type;35 36 typedef std::reverse_iterator<iterator> reverse_iterator;37 typedef std::reverse_iterator<const_iterator> const_reverse_iterator;38 };39 }40 41 23 using std::vector; 42 24 using std::array; 43 25 44 26 template< class T, std::size_t N > 45 class static_array : public detail::array_base<T>27 class static_array 46 28 { 47 29 public: 30 typedef T value_type; 31 typedef T* iterator; 32 typedef const T* const_iterator; 33 typedef T& reference; 34 typedef const T& const_reference; 35 typedef std::size_t size_type; 36 typedef std::ptrdiff_t difference_type; 37 38 typedef std::reverse_iterator<iterator> reverse_iterator; 39 typedef std::reverse_iterator<const_iterator> const_reverse_iterator; 40 48 41 iterator begin() { return m_data; } 49 42 const_iterator begin() const { return m_data; } … … 99 92 100 93 template< class T > 101 class dynamic_array : public detail::array_base<T>94 class dynamic_array 102 95 { 103 96 public: 97 typedef T value_type; 98 typedef T* iterator; 99 typedef const T* const_iterator; 100 typedef T& reference; 101 typedef const T& const_reference; 102 typedef std::size_t size_type; 103 typedef std::ptrdiff_t difference_type; 104 105 typedef std::reverse_iterator<iterator> reverse_iterator; 106 typedef std::reverse_iterator<const_iterator> const_reverse_iterator; 107 104 108 dynamic_array() 105 109 : m_data( nullptr ), m_size(0) {}
Note: See TracChangeset
for help on using the changeset viewer.