小编Aja*_*pa1的帖子

C++中向量的静态分配和动态分配有什么区别?

我知道以下情况的区别:

case 1: int a[10];
Run Code Online (Sandbox Code Playgroud)

对于情况 1,数组的内存在堆栈上分配。

case 2: int *a = new int[10];
Run Code Online (Sandbox Code Playgroud)

对于情况 2,在堆上分配内存并返回一个指针。

但是下面两个声明有什么区别,因为向量内存总是分配在堆上

vector<int> v1;
vector<int> *v2 = new vector<int>();
Run Code Online (Sandbox Code Playgroud)

c++ stdvector dynamic-memory-allocation static-memory-allocation

3
推荐指数
1
解决办法
1736
查看次数