Skip to content

Commit d2eee87

Browse files
committed
Lift prevector default vals to the member declaration
1 parent d262789 commit d2eee87

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

src/prevector.h

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -148,14 +148,14 @@ class prevector {
148148
};
149149

150150
private:
151-
size_type _size;
151+
size_type _size = 0;
152152
union direct_or_indirect {
153153
char direct[sizeof(T) * N];
154154
struct {
155155
size_type capacity;
156156
char* indirect;
157157
};
158-
} _union;
158+
} _union = {};
159159

160160
T* direct_ptr(difference_type pos) { return reinterpret_cast<T*>(_union.direct) + pos; }
161161
const T* direct_ptr(difference_type pos) const { return reinterpret_cast<const T*>(_union.direct) + pos; }
@@ -246,34 +246,34 @@ class prevector {
246246
fill(item_ptr(0), first, last);
247247
}
248248

249-
prevector() : _size(0), _union{{}} {}
249+
prevector() {}
250250

251-
explicit prevector(size_type n) : prevector() {
251+
explicit prevector(size_type n) {
252252
resize(n);
253253
}
254254

255-
explicit prevector(size_type n, const T& val) : prevector() {
255+
explicit prevector(size_type n, const T& val) {
256256
change_capacity(n);
257257
_size += n;
258258
fill(item_ptr(0), n, val);
259259
}
260260

261261
template<typename InputIterator>
262-
prevector(InputIterator first, InputIterator last) : prevector() {
262+
prevector(InputIterator first, InputIterator last) {
263263
size_type n = last - first;
264264
change_capacity(n);
265265
_size += n;
266266
fill(item_ptr(0), first, last);
267267
}
268268

269-
prevector(const prevector<N, T, Size, Diff>& other) : prevector() {
269+
prevector(const prevector<N, T, Size, Diff>& other) {
270270
size_type n = other.size();
271271
change_capacity(n);
272272
_size += n;
273273
fill(item_ptr(0), other.begin(), other.end());
274274
}
275275

276-
prevector(prevector<N, T, Size, Diff>&& other) : prevector() {
276+
prevector(prevector<N, T, Size, Diff>&& other) {
277277
swap(other);
278278
}
279279

0 commit comments

Comments
 (0)