Website Summary Files Commits Branches @commit @diff @stats
path: root / pract SI / week8 / vector.h
blob: bf7c94760bbd893edcae2960723438d4edab6862 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#ifndef VECTOR_HEADER
#define VECTOR_HEADER

class vector {
private:
	int* data;
	size_t size;
	size_t capacity;

	void free();
	void copyFrom(const vector&);
	void resize(); // x2 memory
public:
	vector();
	vector(const vector&);
	
	vector& operator=(const vector&);

	size_t getSize() const;
	void push_back(int);

	int& operator[](size_t);
	const int operator[](size_t) const;

	~vector();
};

#endif