||5 years ago|
|cmake||5 years ago|
|include/vector||5 years ago|
|src||5 years ago|
|test||5 years ago|
|.core.yml||5 years ago|
|.gitignore||5 years ago|
|CMakeLists.txt||5 years ago|
|Dockerfile||5 years ago|
|LICENSE.txt||5 years ago|
|README.md||5 years ago|
A simple implementation of a dynamic vector, which automatically allocates and releases memory.
The library can either be downloaded as a prebuild version or compiled from source.
To compile the library execute the following steps:
git clone --branch <version> https://gitea.metthub.de/Pfeifenjoy/vector cmake -DCMAKE_BUILD_TYPE=Release -H. -Bbuild cmake --build build --target install
This will download the source code, compile and install it.
<version> by your desired version of this library.
Usage with cmake
The library can be easily included into cmake projects by importing the targets.
find_package(vector <version> EXACT REQUIRED) target_link_libraries(<target> PRIVATE vector::vector-shared) #or target_link_libraries(<target> PRIVATE vector::vector-static)
<target> is your target, which can be linked either to the shared or
the static vector library.
The vector can be used as follows:
vector_t vector; vector_init(&vector, sizeof(int)); //initialize vector of ints int i = 42; vector_push(&vector, &i); //copy i to the end of the vector printf("The vector has %zu elements.\n", vector.length); int *a = (int *) vector_get(&vector, 0); //get the first element printf("Using element of vector: %d\n", *a); vector_delete(&vector, 0); //delete the first element vector_destroy(&vector);