промежуточный. частичный рефакторинг инициализации. еще не готов.
This commit is contained in:
37
src/files/Array.h
Normal file
37
src/files/Array.h
Normal file
@@ -0,0 +1,37 @@
|
||||
#pragma once
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <vector>
|
||||
|
||||
template <class T>
|
||||
class Array {
|
||||
private:
|
||||
std::vector<T*> elements;
|
||||
|
||||
public:
|
||||
Array() { }
|
||||
|
||||
virtual ~Array() {
|
||||
for (auto& elem : elements)
|
||||
delete elem;
|
||||
elements.clear();
|
||||
}
|
||||
|
||||
void add(T* new_line) {
|
||||
elements.push_back(new_line);
|
||||
}
|
||||
|
||||
long getLength() const {
|
||||
return (long)elements.size();
|
||||
}
|
||||
|
||||
T* get(long i) {
|
||||
return elements[i];
|
||||
}
|
||||
|
||||
const std::vector<T*>& getElements() const {
|
||||
return elements;
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user