首页 > 代码库 > 用vector实现矩阵, vector传参必须用模板泛型
用vector实现矩阵, vector传参必须用模板泛型
#pragma once #include "stdafx.h" //用vector实现矩阵, vector传参必须用模板泛型 template <typename Object> class Matrix { private: //2维的矩阵,2维的vector数组,vector就是一种动态数组 vector<vector<Object>> array; public: //constructor(), 填充数组(行数) Matrix(int rows, int cols) :array(rows) { for (int i = 0; i < rows; i++) //resize(),改变当前使用数据的大小,如果它比当前使用的大,者填充默认值 array[i].resize(cols); } //重载操作符[],实现索引器,常量引用传值 const vector<Object>& operator[](int row)const { return array[row]; } //重载操作符[],实现索引器,变量引用传值 vector<Object> & operator[](int row) { return array[row]; } //Length() int numrows() const { //array.Length() return array.size(); } //numcols() int numcols() const { //numrows() is true; return numrows() ? array[0].size() : 0; } //deconstructor() virtual ~Matrix() {} //copy() void copy(const Matrix<int>& from, Matrix<int>& to) { for (int i = 0; i < to.numrows; i++) { to[i] = from[i]; } } };
用vector实现矩阵, vector传参必须用模板泛型
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。