/
AirLexa
/
04
Обзор
Документация
Войти
/
AirLexa
/
04
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
Lesson_08/Task_1/Task_1.cpp
41 строка
1 KB
AirLexa
загрузка урока 8
03 мар 2026, 18:21
Верифицирован
03 мар 2026, 18:21
eab1eca
Код
Авторство
О чём код?
#include <iostream> #include <vector> #include <memory> class tridiagonal_matrix { public: std::vector<double> m_down; std::vector<double> m_upper; std::vector<double> m_middle; tridiagonal_matrix( const std::vector<double>& down, const std::vector<double>& upper, const std::vector<double>& middle) : m_down{ down }, m_upper{ upper }, m_middle{ middle } { }; ~tridiagonal_matrix() { std::cout << "destructor called\n"; } // clone() std::unique_ptr<tridiagonal_matrix> clone() { return std::unique_ptr<tridiagonal_matrix>( new tridiagonal_matrix{ *this } ); } }; int main() { auto down = std::vector<double>{ -4.0, 5.0 }; auto upper = std::vector<double>{ 14.0, 8.0 }; auto middle = std::vector<double>{ 3.0, 1.0, 7.0 }; auto matrix = std::make_unique<tridiagonal_matrix>( down, upper, middle ); auto matrix_clone = matrix->clone(); return 0; }