/
Puzzman
/
basic_programming
Обзор
Документация
Войти
/
Puzzman
/
basic_programming
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
cppl_homework_10_01/Main.cpp
45 строк
1 KB
Puzzanis
homework added
30 ноя 2024, 11:26
30 ноя 2024, 11:26
3c1d4b3
Код
Авторство
О чём код?
#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"; } std::unique_ptr<tridiagonal_matrix> clone() { return std::make_unique<tridiagonal_matrix>( this->m_down, this->m_upper, this->m_middle); } }; 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(); std::cout << matrix << std::endl; std::cout << matrix_clone << std::endl; return 0; }