primitive typespush_back({..})size()collapse()Random accessMultidimensional arrays with simple declarationsupport for Complex types like structs and classesslicing the vector
arena allocationshuffle function to randomize the array
A simple example using Vec:
collapse() helps you clear up the Vec
#include "Vec.hpp"
int main()
{
Vec<Vec<float>> fVec = {{2.4f,4.3f,0.0f},{3.0f,5.2221f}};
fVec.collapse();
}slice(start,end) is used to extract a slice within the vector (end exclusive)
#include "Vec.hpp"
int main()
{
Vec<Vec<int>> vec{{1,2,3},{4,5,6},{7,5,8},{9,10,11}};
Vec<Vec<int>> vec_slice = vec.slice(1,3); // vec_slice ={{4,5,6},{7,5,8}}
std::cout << vec_slice << '\n';
}vec[-k] gets the kth element from the last
#include "Vec.hpp"
int main()
{
Vec<Vec<int>> vec{{1,2,3},{4,5,6},{7,5,8},{9,10,11}};
Vec<int> element = vec[-2] // vec[-2] is {7,5,8}
std::cout << element << '\n';
}