Я использую библиотеку Eigen, но следующий код не может быть скомпилирован:
Eigen::SparseMatrix<double, Eigen::ColMajor> test(100, 100);
Eigen::SparseLU<Eigen::SparseMatrix<double, Eigen::ColMajor>, Eigen::COLAMDOrdering<Eigen::DenseIndex>> test_slv;
test_slv.analyzePattern(test);
test_slv.factorize(test);
Я получаю следующий вывод:
c: \ users \ user \ source \ repos \cartel \ cartel \ include \ eigen \ src \ core \ solvetriangular.h (247): ошибка C2280: 'Eigen :: Block & Eigen :: Block :: operator = (const Eigen :: Block &)': попытка обратиться к удаленномуфункция с [Derived = Eigen :: Matrix] c: \ users \ user \ source \ repos \ cartel \ cartel \ include \ eigen \ src \ core \ block.h (143): примечание: компилятор сгенерировал 'Eigen :: Block:: operator = 'здесь с [Derived = Eigen :: Matrix] c: \ users \ user \ source \ repos \ cartel \ cartel \ include \ eigen \ src \ core \ block.h (143): примечание:' Eigen:: Block & Eigen :: Block :: operator = (const Eigen :: Block &) ': функция была неявно удалена, поскольку базовый класс вызывает удаленную или недоступную функцию' Eigen :: BlockImpl :: StorageKind> & Eigen :: BlockImpl :: StorageKind> :: operator = (const Eigen :: BlockImpl :: StorageKind> &) 'с [Derived = Eigen :: Matrix] и [XprType = Eigen :: Matrix, Derived = Eigen :: Matrix]