12345678910111213141516171819202122 |
- #include <Eigen/Dense>
- #include <iostream>
- using namespace Eigen;
- template <typename Derived1, typename Derived2>
- void copyUpperTriangularPart(MatrixBase<Derived1>& dst, const MatrixBase<Derived2>& src)
- {
- /* Note the 'template' keywords in the following line! */
- dst.template triangularView<Upper>() = src.template triangularView<Upper>();
- }
- int main()
- {
- MatrixXi m1 = MatrixXi::Ones(5,5);
- MatrixXi m2 = MatrixXi::Random(4,4);
- std::cout << "m2 before copy:" << std::endl;
- std::cout << m2 << std::endl << std::endl;
- copyUpperTriangularPart(m2, m1.topLeftCorner(4,4));
- std::cout << "m2 after copy:" << std::endl;
- std::cout << m2 << std::endl << std::endl;
- }
|