testing
This commit is contained in:
@@ -12,8 +12,23 @@ namespace utils{
|
||||
//#######################################
|
||||
template<typename T>
|
||||
struct Vector{
|
||||
|
||||
using value_type = T;
|
||||
std::vector<T> v;
|
||||
|
||||
Vector() = default;
|
||||
|
||||
Vector(uint64_t size, T value = T()) {
|
||||
v.resize(size, value);
|
||||
}
|
||||
|
||||
|
||||
void clear(){v.clear();}
|
||||
void push_back(const T& val) { v.push_back(val); }
|
||||
T& operator[](uint64_t idx) { return v[idx]; }
|
||||
const T& operator[](uint64_t idx) const { return v[idx]; }
|
||||
uint64_t size() const { return v.size(); }
|
||||
|
||||
void fill(const uint64_t size, const T num){
|
||||
v.clear();
|
||||
for (uint64_t i = 0; i < size; i++)
|
||||
@@ -93,6 +108,22 @@ namespace utils{
|
||||
void print() const{
|
||||
std::cout << *this << std::endl;
|
||||
}
|
||||
|
||||
void linspace(const T start, const T stop, const T num){
|
||||
v.clear();
|
||||
|
||||
if (num > 1){
|
||||
|
||||
double delta = (stop - start)/(num - 1);
|
||||
|
||||
for (uint64_t i = 0; i < num; i++){
|
||||
v.push_back(static_cast<T>(start + delta * i));
|
||||
}
|
||||
//v.push_back(static_cast<T>(stop));
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
typedef Vector<int> Vi;
|
||||
|
||||
Reference in New Issue
Block a user