精华内容
下载资源
问答
  • 如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题如题...
  • 建了一个二维数组(19*19): ![图片说明](https://img-ask.csdn.net/upload/201806/06/1528254415_305614.png) 初始化: ![图片说明](https://img-ask.csdn.net/upload/201806/06/1528254479_16033.png) ...
  • C++中二vector赋值

    万次阅读 2018-01-09 17:09:36
    vector > nums(8,vector... //二维数组的行数为8,列数为13。后一定要加一个空格,否则会被判别为操作符>>出错 int b[8][13] = {{0,0,1,0,0,0,0,1,0,0,0,0,0}, {0,0,0,0,0,0,0,1,1,1,0,0,0}, {0,1,1,0,1,0,0,0,0,0,0
    vector<vector<int> > nums(8,vector<int>(13)); //二维数组的行数为8,列数为13。<int>后一定要加一个空格,否则会被判别为操作符>>出错
    int b[8][13] = {{0,0,1,0,0,0,0,1,0,0,0,0,0},
                    {0,0,0,0,0,0,0,1,1,1,0,0,0},
                    {0,1,1,0,1,0,0,0,0,0,0,0,0},
                    {0,1,0,0,1,1,0,0,1,0,1,0,0},
                    {0,1,0,0,1,1,0,0,1,1,1,0,0},
                    {0,0,0,0,0,0,0,0,0,0,1,0,0},
                    {0,0,0,0,0,0,0,1,1,1,0,0,0},
                    {0,0,0,0,0,0,0,1,1,0,0,0,0}};
    for(int i = 0; i < 8; i++){
        for(int j = 0; j < 13; j++){
            nums[i][j] = b[i][j];
        }
    }
    

    展开全文
  • 2. 编写代码,实现二维向量和三维向量的运算: 1) 遵循软件开发标准,程序分文件书写; 2) 可以进行向量的加减和比较运算(重载+,-,=和==运算符)。 3) 分别用静态链接和共享链接的方式测试向量的使用。 3. 创建包含...
    1.#include<iostream>
    using namespace std;
    int main()
    {
      cout<<"Hello Woeld"<<endl;
    return 0;
    }
    2.vector.cxx
    #include<iostream>
    int main()
    {int k;
    char x;
    cout<<"请输入向量的维度:"<<endl;
    cin>>k;
    vector a(k),b(k),c(k);
    cout<<"请输入A向量坐标:"<<endl;
    cin>>a;
    cout<<"请输入B向量坐标:"<<endl;
    cin>>b;
    L:cout<<"请输入运算符(+,-,*,q[退出])"<<endl;
    cin>>x;
    switch(x)
    {case '+':c=a+b;break;
    case '-':c=a-b;break;
    case '*':c=a*b;break;
    case 'q':goto Z;
    default:cout<<"错误"<<endl;
    }
    cout<<"C("<<c<<")";goto L;
    Z:cout<<"按回车退出"<<endl;
    return 0;
    }
    classvector.h
    class vector
    {public:
    vector( int =1);           //默认长度构造函数
    vector(const int*,int);    //使用数组参数构造函数
    vector(const vector&);     //复制构造函数
    ~vector();                 //析构函数
    //重载运算符
    int  operator()()const;    //返回K值,即向量的维度
    vector &operator=(const vector&); 
    friend vector operator+(const vector&,const vector&);
    friend vector operator-(const vector&,const vector&);
    friend vector operator*(const vector&,const vector&);
    //重载输出输入
    friend ostream&operator<<(ostream &output,const vector&);
    friend istream&operator>>(istream &input,vector&);
    private:
    int *v;
    int len;
    };
    //构造函数     
    vector::vector(int size)//类对象初始化
    {v=new int[size];
    for(int i=0;i<size;i++) v[i]=0;
    len=size;}
    vector::vector(const int*c,int size)//用于运算 加减乘 时构造正确的vector类型对象,然后返回给main中的C,达到正确输出的目的
    {v=new int [size];
    len=size;
    for(int i=0;i<len;i++) 
    v[i]=c[i];}
    vector::vector(const vector& a)
    {len=a();
    v=new int[len];
    for(int i=0;i<len;i++)
    v[i]=a.v[i];}


    //析构函数     
    vector::~vector()
    {delete[] v;
    len=0;}
    //运算符重载     
    int vector::operator()()const//括弧:为了将main中的K值(即向量的维度)传给类当中定义为保护类型的len类成员
    {return len;}
    istream&operator>>(istream &input,vector&a)//输入
    {for(int i=0;i<a();i++)
    input>>a.v[i];
    return input;}
    ostream&operator<<(ostream &output,const vector&a)//输出
    {for(int i=0;i<a();i++)
    output<<a.v[i]<<" ";
    return output;}
    vector operator+(const vector&a,const vector&b)//加法
    { int size=a();
    int *c=new int[size];
    for(int i=0;i<size;i++)
        c[i]=a.v[i]+b.v[i]; return vector(c,size);}
    vector operator-(const vector&a,const vector&b)//减法
    { int size=a();
    int *c=new int[size];
    for(int i=0;i<size;i++)
        c[i]=a.v[i]-b.v[i];
    return vector(c,size);}
    vector operator*(const vector&a,const vector&b)//乘法
    { int size=a();
    int *c=new int[size];
    for(int i=0;i<size;i++)
        c[i]=a.v[i]*b.v[i];
    return vector(c,size);}
    vector &vector::operator=(const vector&a)//赋值号
    {int *c=new int[len];
    for(int i=0;i<len;i++)
    v[i]=a.v[i];return *this;
    }
    ubuntu@ubuntu-virtual-machine:~$ cd wx/Hello
    ubuntu@ubuntu-virtual-machine:~/wx/Hello$ g++ -E -o Hello.i Hello.cxx
    ubuntu@ubuntu-virtual-machine:~/wx/Hello$ g++ -S Hello.i -o Hello
    ubuntu@ubuntu-virtual-machine:~/wx/Hello$ g++ -c Hello.cxx
    ubuntu@ubuntu-virtual-machine:~/wx/Hello$ g++ -E -o Hello.i Hello.cxx
    ubuntu@ubuntu-virtual-machine:~/wx/Hello$ g++ Hello.o -o Hello -I ACE
    ubuntu@ubuntu-virtual-machine:~/wx/Hello$ Hello.exe
    Hello.exe: command not found
    ubuntu@ubuntu-virtual-machine:~/wx/Hello$ ./Hello
    Hello World!!
    ubuntu@ubuntu-virtual-machine:~/wx/Hello$ 
    2.(1)静态链接库:
    ubuntu@ubuntu-virtual-machine:~$ cd wx/vec1
    ubuntu@ubuntu-virtual-machine:~/wx/vec1$ make
    g++ -c  vector.cxx -o vector.o
    g++ vector.o -o vector.exe
    ubuntu@ubuntu-virtual-machine:~/wx/vec1$ ./vector.exe
    (2)动态链接库
    ubuntu@ubuntu-virtual-machine:~$ cd wx/vec2
    ubuntu@ubuntu-virtual-machine:~/wx/vec2$ make
    g++ -DDLLBUILD -c vector.cxx -o vector.o
    g++ -shared -o libvector.so vector.o
    g++ vector.o -o vector.exe
    ubuntu@ubuntu-virtual-machine:~/wx/vec2$ ./vector.exe









    展开全文
  • C++ vector 实现二维数组,赋值

    万次阅读 多人点赞 2019-05-11 15:19:30
    vector二维数组赋值 vector<vector<float> >bk; vector<float> MM; MM.push_back(1); MM.push_back(22); MM.push_back(3); MM.push_back(6); bk.push_back(MM); 原文链接 (1...

    vector二维数组赋值

    vector<vector<float> >bk;
    
    vector<float> MM;
    
        MM.push_back(1);
        MM.push_back(22);    
        MM.push_back(3);
        MM.push_back(6);
    
        bk.push_back(MM);

    参考链接

    (1) vector<int> a(10); //定义了10个整型元素的向量(尖括号中为元素类型名,它可以是任何合法的数据类型),但没有给出初值,其值是不确定的。
    (2)vector<int> a(10,1); //定义了10个整型元素的向量,且给出每个元素的初值为1
    (3)vector<int> a(b); //用b向量来创建a向量,整体复制性赋值
    (4)vector<int> a(b.begin(),b.begin+3); //定义了a值为b中第0个到第2个(共3个)元素
    (5)int b[7]={1,2,3,4,5,9,8};vector<int> a(b,b+7); //从数组中获得初值

     

    在STL中Vector这一容器,无论是在封装程度还是内存管理等方面都优于传统C++中的数组。本文主要是关于使用Vector初始化、遍历方面的内容。其他二维的思想也是类似的。

    这里简单叙述一下C++ 构建二维动态数组

    int **p;
    p = new int*[10];    //注意,int*[10]表示一个有10个元素的指针数组
    for (int i = 0; i < 10; ++i)
    {
        p[i] = new int[5];
    }

    定义一个二维整形数组并初始化:

    vector<vector<int> > array(m); //这个m一定不能少//vector<int> array[m];
    //初始化一个m*n的二维数组
    for(int i=0;i<m;i++) 
    {
        array[i].resize(n);
    }
    //遍历赋值
    for(i = 0; i < array.size(); i++)
    {
       for (j = 0; j < array[0].size();j++) 
        {   
            array[i][j] = (i+1)*(j+1); 
        } 
    }

    例子

    int main()
    {
        int i = 0, j = 0;
    	vector< vector<int> > maze(8, vector<int> (12, 0));    
        int A[8][12] = {{ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
                        { 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1 },
                        { 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1 },
                        { 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1 },
                        { 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1 },
                        { 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1 },
                        { 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1 },
                        { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }
                       };
        int m, n;
        for(m = 0; m < maze.size(); m++)
        {
            for(n = 0; n < maze[m].size(); n++)
            {
                maze[m][n] = A[m][n];
                cout << maze[m][n] << " ";
            }
            cout << "\n";
        }
    
    }

     

    展开全文
  • public class test { ... // 学会二维数组的定义,初始化,循环赋值 // 用第一种方法定义二维数组 int intArray[][]; // 用第二种方法定义二维数组 int[] intArray1[]; // 用第三种方法定义二维数...
    package com.Array;
    
    public class test {
    	public static void main(String[] args) {
    		// 学会二维数组的定义,初始化,循环赋值
    		// 用第一种方法定义二维数组
    		int intArray[][];
    		// 用第二种方法定义二维数组
    		int[] intArray1[];
    		// 用第三种方法定义二维数组
    		int[][] intArray2;
    		// 定义一个3行3列的二维数组
    		// intArray3[0][0]--->intArray3[2][2]
    		int intArray3[][] = new int[3][3];
    		//定义一个只指定行数的二维数组
    		//说明二维数组是一个特殊的一维数组,必须制定行数,而列数可以不用在初始化时指定
    		int intArray4[][]=new int[4][];
    		//每一行相当于一个一维数组,需要创建
    		intArray4[0]=new int[9];//第一行有9列
    		intArray4[1]=new int[7];//第二行有7列
    		intArray4[2]=new int[6];//第三行有6列
    		intArray4[3]=new int[2];//第四行有2列
    		//这样可以创建出一个不是正方形的二维数组,这样的二维数组一样可以使用for循环赋值
    		//只需要将具体值改为二维数组的行长度和列长度
    		
    		// 使用for循环给二维数组赋值
    		for (int i = 0; i < intArray3.length; i++) {
    			for (int j = 0; j < intArray3[i].length; j++) {
    				intArray3[i][j] = i + j;
    				System.out.print(intArray3[i][j] + "\t");
    			}
    			System.out.println();
    		}
    		System.out.println();
    		// 使用增强型循环打印二维数组(这里会输出9个奇怪的符号代码,我暂时不知道原因)
    
    		for (int i[] : intArray3) {
    			for (int n : i) {
    				System.out.print(n + "\t");
    			}
    			System.out.println();
    		}
    
    		//百度搜的怎么使用增强型for循环打印二维数组
    		/*String name[][] = { { "张三", "李四", "王五" }, { "张六", "李七", "王八" }, { "张九", "李十", "王十一" } };
    		for (String[] str1 : name) {
    			for (String str2 : str1) {
    				System.out.println(str2);
    			}
    		}*/
    
    	}
    }
    

     

    展开全文
  • 二维vector进行赋值

    万次阅读 2017-11-19 16:41:41
    二维vector进行赋值
  • 如何将二维数组赋值给vector

    千次阅读 2016-08-15 12:52:17
    vector > a; double b[10][10] = {1,2,3,4,5,6,7,8,9,,,,,,,,,,,,,,,,89,79}; 将b[10][10]值如何赋给a? 一维数组: vector a; int b[5] = {1,2,3,4,5};...二维数组: 如果a的长度给定了,  vector > a; b[5][6] =
  • C++二维数组创建以及行列的求法

    千次阅读 2018-07-29 16:07:50
    对于一维数组来说,数组的大小可以省略,但对于二维数组,C++规定,在声明和初始化二维数组时,只有第一维(行数)可以省略。 合法的声明有: int a[2][3]; int a[][3]; 不合法的声明: int a[][]; int a[2][]...
  • 二维数组(向量)中的一行(一维数组(向量))可以赋值给一个一维数组(向量)“`int main() {size_t m = 3; size_t n = 3;... //二维向量iivec.resize(m); for(size_t i = 0; i != m; ++i) iivec[i].r
  • C++二维vector

    2018-03-30 18:25:07
    //第次门诊结果 diagnosis2.patient_id = "p000"; diagnosis2.treatment_id = "t002"; diagnosis2.sex = "0"; diagnosis2.time = "2016-4-16"; diagnosis2.icd = "I10 02"; diagnosis2.disease_name = "高...
  • C++培训之语言二维数组的定义和引用更新时间:2016年09月12日14时39分 来源:传智播客C++培训学院 浏览次数:C语言二维数组的定义和引用7.1.1二维数组的定义前面介绍的数组只有一个下标,称为一维数组,其数组元素也...
  • C++二维vector的初始化问题

    万次阅读 2018-05-15 20:58:12
    今天在写一个程序时,需要使用到二维向量vector<vector<int> >,初始只能确定列数,但是无法确定行数 vector<vector<int> > result; 但是如果不初始化,直接使用 i=0; result[i].push_...
  • C++ 二维vector初始化、resize()

    千次阅读 2019-02-03 19:45:11
    二维vector初始化 1.定义时就设置大小、初值 vector&lt;vector&lt;int&gt; &gt; v(2, vector&lt;int&gt;(4,1));//2行*4列,初始化为1 2.先定义vector,再设置大小、赋值 vector&...
  • C++ 二维的数组、vector 初始化为0

    千次阅读 2020-04-08 20:02:19
    1、vector 初始化为二维,元素全为0 vector<vector<int> > myvec(n, vector<int>(n, 0)); 2、二维数组初始化为0 int myvec[n][n]; memset(myvec,0,sizeof(myvec)); ...
  • vector的初始化有很多方式,在N初始化时还会一些容易出现错误的地方。下面进行总结 以下的总结均以int作为模板参数 1.一vector的初始化 vector的构造函数通常来说有五种,如下: vector():创建一个空vector ...
  • c++ 二维数组作为参数引用

    千次阅读 2018-05-12 09:35:17
    //参数只写上第二维大小 void getAllcameraList(float(*left_Intrinsic)[3], float(*left_Rotation)[3], float(*left_Translation)[3], float(*right_Intrinsic)[3], float(*right_Rotation)[3], float(*right_...
  • 一、C++中".","::",":","->"的意义及区别: 1、"A.B"则A为对象或者结构体; 2、"A->B"则A为指针,->...C++中二vector赋值操作: 1、直接赋值: vector<vector<int>> mat = { {3, 0,
  • (1)网上参考的三维向量类 /*-------------------------------------------------- * 类名称:三维向量类-Vector.h * 类作用:用于三维空间中向量常见的数学运算. * 创建人:Edited by huangwang * 创建...
  • 今天给大家分享一下C++里创建动态数组的两种方法,第一...我们用new申请内存来创建一个二维数组的思路是先用一个二级指针指向指针数组,之后使指针数组的每个元素指向分配的空间。 int *p = new int[size]; p[i] =
  • C++ 用vector 动态创建二维数组

    千次阅读 2020-08-14 15:47:32
    注意: 用一维数组给二维数组赋值时,两个 ‘>’ 要隔开 赋值: 可直接赋值 arr[i][j] = 1; 添加元素: 在最后一行下面添加一行: arr.push_back(vector<int>(10, 1)); 在某一行末尾
  • 重点掌握赋值运算符的重载。 void operator=(const Vector&v); #include <iostream> using namespace std; /* *作者:youshen_wwd *时间:2020/5/14 *题目:设向量X=(x1,x2,…,xn)和Y=(y1,y2…,yn),...
  • 二维vector;矩阵相乘
  • =,-(负号), =(赋值)" 操作符,以实现向量、矩阵的基本运算。 要求: 除了重载相应的操作符,也需要实现一个类的一些基本的方法(接口),比如构造、析构、拷贝构造等。 可以使用C++标准模板库(STL)里面的vector类...
  • 注意:只有把二维数组改为一个指向向量的指针数组的前提下才可以这么做! 比如: #include <iostream> using namespace std; void test(char **ptr) { cout *ptr ; } int main() { char *p...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,791
精华内容 2,316
关键字:

c++二维向量赋值

c++ 订阅