`
kmplayer
  • 浏览: 500607 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

借助vector<vector<T> >,实现一个简单的矩阵

 
阅读更多
1,实例代码:
#include <iostream>
#include <vector>
using namespace std;

template<class T>
class Matrix
{
private :
    vector<vector<T> > _mat;

public :
    Matrix(int row, int col) //这个构造函数是关键
    {
        if (col>=0 && row>0)
        {
            _mat.resize(row);
            for (int i=0; i<row; ++i)
                _mat[i].resize(col);
        }
    }
    vector<T>& operator[](int i)
    {
        if(i>=0 && i<_mat.size())
            return  _mat[i];
    }
};

int main()
{
    Matrix<int> m(10, 10);
    cout << m[1][2]<<" "<<m[9][9];
}
分享到:
评论

相关推荐

    读取注释读取注释

    读取注释 读取一个文件内//后面的 和/**/里面的数据 #include &lt;iostream&gt; #include &lt;string&gt; #include &lt;vector&gt; #include &lt;map&gt; using namespace std; pair&lt;vector&lt;string&gt;,string&gt; ZhuShi; vector&lt; pair...

    vector实现矩阵运算

    vector&lt; vector&lt;int&gt; &gt; m(a, vector&lt;int&gt;(b)); 这个语句中,标准vector创建了一个包含a个向量的向量, 其中每个向量中包含有b个整数。这a * b个元素中都保存 着默认值0。 用这种方式可以轻松地返回一个数组...

    二维vector源码实现

     vector&lt;vector&lt;int&gt; &gt; Matrix(N, vector&lt;int&gt; (M, 0));  ostream_iterator&lt;int&gt; os(cout, " ");  Matrix[0][2] = 4;  //交换矩阵的两行  Matrix[0].swap(Matrix[1]);  //交换矩阵第二行的两个元素  swap...

    泛型类vector<T>源码分析

    泛型类vector&lt;T&gt;源码分析

    自己制作的一个《学霸模拟器》

    #include&lt;bits/stdc++.h&gt;#include&lt;stdio.h&gt;#include&lt;windows.h&gt;#include&lt;conio.h&gt;#include&lt;stdlib.h&gt;#include&lt;time.h&gt;#define LEN 30#define WID...include &lt;sstream&gt;#include &lt;iomanip&gt;#include &lt;vector&gt;#include &lt;olectl.h&gt;...

    网络安全业务竞赛

    #include &lt;cstring&gt; #include &lt;ctype.h&gt; #include &lt;cstdlib&gt; #include &lt;cmath&gt; #include &lt;climits&gt; #include &lt;ctime&gt; #include &lt;iostream&gt; #include &lt;algorithm&gt; #include &lt;deque&gt; #include &lt;vector&gt; #include ...

    STL容器vector

    #include &lt;vector&gt; using namespace std; struct student { int id; string name; float height; }; int main(int argc, char* argv[]) { vector&lt;student&gt; onit; cout&lt;&lt;"请输入相关学生数据:"&lt;&lt;endl; ...

    Vector创建二维数组及代码实现.docx

    下面是一个简单的示例代码,演示如何使用`vector`创建一个二维数组: ```cpp #include &lt;iostream&gt; #include &lt;vector&gt; int main() { // 定义二维数组的行数和列数 int rows = 3; int cols = 4; // 创建一个二...

    c++头文件大全.txt

    C++ 标准库头文件大全 部分展示:合集可下载查看 通用实用程序 &lt;algorithm&gt;:算法 &lt;array&gt;:数组 &lt;bitset&gt;:位集 ...&lt;vector&gt;:向量 输入/输出 &lt;fstream&gt;:文件流 &lt;iomanip&gt;:输入/输出操作符格式化

    使用`stdvector`来创建二维数组(通常称为二维向量).pdf

    `std::vector&lt;std::vector&lt;int&gt;&gt;`来表示一个二维整数数组。 ```cpp #include &lt;iostream&gt; #include &lt;vector&gt; int main() { // 创建一个二维向量,初始时没有任何元素 std::vector&lt;std::vector&lt;int&gt;&gt; matrix; // 可以...

    std vector用法详解

    vector是C++标准模板库中的部分内容,它是一个多功能的,能够...vector之所以被认为是一个容器,是因为它能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据。

    C++数组vector用法.pdf

    ::std::vector&lt;&gt; 没有继承任何东西,只是实现了管理一个动态数组该做的事。 vector 的优点 1. vector 是一个标准的 C++ 容器类,可以在任何标准的 C++ 实现中使用。 2. vector 可以管理任意类型的对象的动态数组...

    编译原理上机实习

    ⑧vector&lt;pair&lt;int,string&gt; &gt; analyst(vector&lt;string&gt; vec); //此函数接受一个字符串数组,对它进行词法分析,返回一个pair型数组 ⑨bool IsKey(string str); //此函数判断传递的参数是否为关键字,是的话,返回真...

    01背包问题动态规划.docx

    01背包问题动态规划 01背包问题是一个经典的动态规划... vector&lt;vector&lt;int&gt;&gt; dp(n + 1, vector&lt;int&gt;(W + 1, 0)); // 动态规划求解 for (int i = 1; i &lt;= n; ++i) { for (int w = 1; w &lt;= W; ++w) { // 如果第

    IMAGE and VIDEO COMPRESSION for MULTIMEDIA ENGINEERING Fundamentals, Algorithms, and Standards.part1.rar

    Preserving Differential Coding&lt;br&gt;3.7 Summary &lt;br&gt;3.8 Exercises&lt;br&gt;References&lt;br&gt;...&lt;br&gt;4.1.4 Basis Vector Interpretation&lt;br&gt;4.1.5 Procedures of Transform Coding&lt;br&gt;4.2 Linear Transforms&lt;br&gt;4.2.1 2...

    AVL(平衡二叉检索)树模板(带template)

    vector&lt;T&gt; PreOrder() { vector&lt;T&gt;vec; PreOrder(root, vec); return vec; } vector&lt;T&gt; InOrder() { vector&lt;T&gt;vec; InOrder(root, vec); return vec;} vector&lt;T&gt; PostOrder() { vector&lt;T&gt;vec; PostOrder(root, ...

    #include 的用法

    #include&lt;vector&gt; 的用法

    C++标准模板库STL初步(2)

    在C++标准中,STL被组织为下面的几个头文件:&lt;string&gt;、&lt;vector&gt;、&lt;list&gt;、&lt;deque&gt;、&lt;algorithm&gt;、&lt;iterator&gt;、&lt;set&gt;、&lt;map&gt;、&lt;memory&gt;、&lt;numeric&gt;、&lt;queue&gt;、&lt;functional&gt;、&lt;stack&gt;和&lt;utility&gt;。文件中主要介绍了...

    STL知识点思维导图

    在C++标准中,STL被组织为下面的几个头文件:&lt;string&gt;、&lt;vector&gt;、&lt;list&gt;、&lt;deque&gt;、&lt;algorithm&gt;、&lt;iterator&gt;、&lt;set&gt;、&lt;map&gt;、&lt;memory&gt;、&lt;numeric&gt;、&lt;queue&gt;、&lt;functional&gt;、&lt;stack&gt;和&lt;utility&gt;。文件中主要介绍了...

Global site tag (gtag.js) - Google Analytics