Если вы хотите построить немного больший и/или многомерный тензор, то tensorflow::ops::Input::Initializer, объявленный в tensorflow/cc/framework/ops.h, имеет много конструкторов, которые позволяют вам построить Tensor из различных типов констант С++, таких как простые примитивные константы и вложенные списки инициализаторов, представляющие многомерный массив.
Например, если вы хотите построить матрицу 2x2, вы можете сделать следующее:
#include "tensorflow/cc/framework/cc/ops.h"
tensorflow::ops::Input::Initializer a({{1, 2}, {3, 4}});
// a.tensor will be a Tensor with type DT_INT32 and shape {2, 2}.
На самом деле это работает при компиляции, но ошибки при запуске, что показывает, что a является тензором с [0] тензорной формой.
Я не знаю, где не так, но мой успешный путь: