У меня есть Eigen::Matrix, и я хотел бы создать новую матрицу, в которой все ее элементы генерируются некоторым вызовом функции для элементов матрицы:
Matrix< Foo,2,2 > m = ...;
Matrix< int, 2, 2> new_m;
for each m[i][j]:
new_m[i][j] = m[i][j].member_of_foo_returns_int()
Я просмотрел Eigen::unaryExpr, но элементы изменились, и результат должен быть таким же. Однако у меня есть объекты Foo в первой матрице, а int возвращается в новой матрице. Возможно ли это без ванильного цикла?