设为首页 加入收藏

TOP

c++多维数组的动态分配教程
2017-10-09 08:55:39 】 浏览:4668
Tags:多维 动态 分配 教程

我们知道在c或者c++里面,基本数组的定义必须是常数才可以。动态分配内存没法直接了当。

在c++ 里可以vector来动态分配,

例如:

    vector
  
   > dp(n + 1, vector
   
    (W + 1));
   
  

但是更基本的做法是指针来new,

一维数组:

1 int *array1D;
2 //假定数组长度为m
3 //动态分配空间
4 array1D = new int [m];
5 //释放
6 delete [] array1D;

二维数组:

int **array2D;
//假定数组第一维长度为m, 第二维长度为n
//动态分配空间
array2D = new int *[m];
for( int i=0; i
  
   

P.S. 事实上二维数组空间的释放还可以更简单地用:delete [] array2D;

三维数组;

int ***array3D;
//假定数组第一维为m, 第二维为n, 第三维为h
//动态分配空间
array3D = new int **[m];
for( int i=0; i
    
     

c语言malloc 版本:

#include
      
       
int **a=(int **)malloc(m*sizeof(int *));
for(int i=0;i
        
       
      
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇C++之STL Stack和Queue设计和使用 下一篇C++ char*,const char*,string..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目