C++ linker presentation

This commit is contained in:
2026-02-24 10:21:15 +01:00
parent 0fda0d75fb
commit 6f3d98f388
32 changed files with 788 additions and 0 deletions

View File

@@ -0,0 +1,24 @@
#include "wrapper.h"
#include <vector>
extern "C" {
void vec_create(void** out) {
*out = new std::vector<double>();
}
void vec_destroy(void* vec) {
delete static_cast<std::vector<double>*>(vec);
}
void vec_push(void* vec, double val) {
static_cast<std::vector<double>*>(vec)->push_back(val);
}
double vec_get(void* vec, int idx) {
return (*static_cast<std::vector<double>*>(vec))[idx];
}
int vec_size(void* vec) {
return static_cast<std::vector<double>*>(vec)->size();
}
}