9
9
#define ARRAY_DEFINITIONS_H
10
10
11
11
12
- template <typename T, unsigned int max_size_>
12
+ template <typename T, size_t max_size_>
13
13
Array<T,max_size_>::Array()
14
14
{
15
15
clear ();
16
16
}
17
17
18
- template <typename T, unsigned int max_size_>
18
+ template <typename T, size_t max_size_>
19
19
Array<T,max_size_>::Array(const T &value)
20
20
{
21
21
fill (value);
22
22
}
23
23
24
- template <typename T, unsigned int max_size_>
24
+ template <typename T, size_t max_size_>
25
25
Array<T, max_size_>::Array(const T (&values)[max_size_])
26
26
{
27
27
fill (values);
28
28
}
29
29
30
- template <typename T, unsigned int max_size_>
31
- T& Array<T, max_size_>::operator [](const unsigned int i)
30
+ template <typename T, size_t max_size_>
31
+ T& Array<T, max_size_>::operator [](const size_t i)
32
32
{
33
33
return values_[i];
34
34
}
35
35
36
- template <typename T, unsigned int max_size_>
37
- T& Array<T, max_size_>::at(const unsigned int i)
36
+ template <typename T, size_t max_size_>
37
+ T& Array<T, max_size_>::at(const size_t i)
38
38
{
39
- // assert((i>=0) && (i<size_));
40
39
return values_[i];
41
40
}
42
41
43
- template <typename T, unsigned int max_size_>
42
+ template <typename T, size_t max_size_>
44
43
T& Array<T, max_size_>::front()
45
44
{
46
- // assert(!empty());
47
45
return values_[0 ];
48
46
}
49
47
50
- template <typename T, unsigned int max_size_>
48
+ template <typename T, size_t max_size_>
51
49
T& Array<T, max_size_>::back()
52
50
{
53
- // assert(!empty());
54
51
return values_[size_-1 ];
55
52
}
56
53
57
- template <typename T, unsigned int max_size_>
54
+ template <typename T, size_t max_size_>
58
55
void Array<T, max_size_>::clear()
59
56
{
60
57
size_ = 0 ;
61
58
}
62
59
63
- template <typename T, unsigned int max_size_>
60
+ template <typename T, size_t max_size_>
64
61
void Array<T, max_size_>::fill(const T &value)
65
62
{
66
63
assign (max_size_,value);
67
64
}
68
65
69
- template <typename T, unsigned int max_size_>
66
+ template <typename T, size_t max_size_>
70
67
void Array<T, max_size_>::fill(const T (&values)[max_size_])
71
68
{
72
69
assign (max_size_,values);
73
70
}
74
71
75
- template <typename T, unsigned int max_size_>
76
- void Array<T, max_size_>::assign(const unsigned int n, const T &value)
72
+ template <typename T, size_t max_size_>
73
+ void Array<T, max_size_>::assign(const size_t n, const T &value)
77
74
{
78
- unsigned int assign_size = n;
75
+ size_t assign_size = n;
79
76
if ((n > size_) && (n <= max_size_))
80
77
{
81
78
size_ = n;
@@ -85,16 +82,16 @@ void Array<T, max_size_>::assign(const unsigned int n, const T &value)
85
82
size_ = max_size_;
86
83
assign_size = max_size_;
87
84
}
88
- for (unsigned int i=0 ; i<assign_size; i++)
85
+ for (size_t i=0 ; i<assign_size; i++)
89
86
{
90
87
values_[i] = value;
91
88
}
92
89
}
93
90
94
- template <typename T, unsigned int max_size_>
95
- void Array<T, max_size_>::assign(const unsigned int n, const T values[])
91
+ template <typename T, size_t max_size_>
92
+ void Array<T, max_size_>::assign(const size_t n, const T values[])
96
93
{
97
- unsigned int assign_size = n;
94
+ size_t assign_size = n;
98
95
if ((n > size_) && (n <= max_size_))
99
96
{
100
97
size_ = n;
@@ -107,7 +104,7 @@ void Array<T, max_size_>::assign(const unsigned int n, const T values[])
107
104
memcpy ((void *) values_, (void *) values, assign_size*sizeof (T));
108
105
}
109
106
110
- template <typename T, unsigned int max_size_>
107
+ template <typename T, size_t max_size_>
111
108
void Array<T, max_size_>::push_back(const T &value)
112
109
{
113
110
if (size_ < max_size_)
@@ -116,7 +113,7 @@ void Array<T, max_size_>::push_back(const T &value)
116
113
}
117
114
}
118
115
119
- template <typename T, unsigned int max_size_>
116
+ template <typename T, size_t max_size_>
120
117
void Array<T, max_size_>::pop_back()
121
118
{
122
119
if (size_ > 0 )
@@ -125,25 +122,25 @@ void Array<T, max_size_>::pop_back()
125
122
}
126
123
}
127
124
128
- template <typename T, unsigned int max_size_>
129
- unsigned int Array<T, max_size_>::size()
125
+ template <typename T, size_t max_size_>
126
+ size_t Array<T, max_size_>::size()
130
127
{
131
128
return size_;
132
129
}
133
130
134
- template <typename T, unsigned int max_size_>
135
- unsigned int Array<T, max_size_>::max_size()
131
+ template <typename T, size_t max_size_>
132
+ size_t Array<T, max_size_>::max_size()
136
133
{
137
134
return max_size_;
138
135
}
139
136
140
- template <typename T, unsigned int max_size_>
137
+ template <typename T, size_t max_size_>
141
138
bool Array<T, max_size_>::empty()
142
139
{
143
140
return size_ == 0 ;
144
141
}
145
142
146
- template <typename T, unsigned int max_size_>
143
+ template <typename T, size_t max_size_>
147
144
bool Array<T, max_size_>::full()
148
145
{
149
146
return size_ == max_size_;
0 commit comments