Не уверен, как это делается с библиотекой H5 Cpp, но с HDFql это можно решить следующим образом (обратите внимание, что записанные данные будут нулями, поскольку вы вызываете temp.setZero();
):
#include <HDFql.hpp>
#include <Eigen/Dense>
HDFql::execute("CREATE TRUNCATE FILE test_save.hdf5");
HDFql::execute("CREATE DATASET test_save.hdf5 test_dataset AS DOUBLE(10, 5)")
Eigen::MatrixXd temp(10, 5);
temp.setZero();
sprintf(script, "INSERT INTO test_save.hdf5 test_dataset VALUES FROM MEMORY %d", HDFql::variableTransientRegister(temp.data()));
HDFql::execute(script);