Use Eigen::fix<N> to pass compile-time sizes.

This commit is contained in:
Gael Guennebaud
2017-02-11 15:31:28 +01:00
parent 24409f3acd
commit 83d6a529c3
6 changed files with 46 additions and 26 deletions

View File

@@ -4,10 +4,10 @@ using namespace Eigen;
using namespace std;
template<typename Derived>
Eigen::Reshape<Derived, 4, 2>
Eigen::Reshaped<Derived, 4, 2>
reshape_helper(MatrixBase<Derived>& m)
{
return Eigen::Reshape<Derived, 4, 2>(m.derived());
return Eigen::Reshaped<Derived, 4, 2>(m.derived());
}
int main(int, char**)

View File

@@ -4,10 +4,10 @@ using namespace std;
using namespace Eigen;
template<typename Derived>
const Reshape<const Derived>
const Reshaped<const Derived>
reshape_helper(const MatrixBase<Derived>& m, int rows, int cols)
{
return Reshape<const Derived>(m.derived(), rows, cols);
return Reshaped<const Derived>(m.derived(), rows, cols);
}
int main(int, char**)
@@ -17,7 +17,7 @@ int main(int, char**)
2, 5, 8, 11,
3, 6, 9, 12;
cout << m << endl;
auto n = reshape_helper(m, 2, 6);
Ref<const MatrixXd> n = reshape_helper(m, 2, 6);
cout << "Matrix m is:" << endl << m << endl;
cout << "Matrix n is:" << endl << n << endl;
}