c++ vector保存指针

您所在的位置:网站首页 指向vector的指针怎么写 c++ vector保存指针

c++ vector保存指针

#c++ vector保存指针| 来源: 网络整理| 查看: 265

文章目录 一、指向vector的指针1.&:指向栈上的vector(1)形式(2)局部变量自动释放(3)区分误区 2.new:指向堆上的vector(1)形式(2)除非主动释放,数据不会消失 二、指向vector的指针数组1.p[i]:指向栈上的vector(1)形式(2)局部变量自动释放 2.p[i]:指向堆上的vector(1)形式(2)除非主动释放,数据不会消失 三、vector内是指针元素1.栈

一、指向vector的指针 1.&:指向栈上的vector (1)形式

指向一个栈上的vector变量,栈上的变量会因为{}范围的不同而被自动释放(所谓的局部变量)。

对应vector的所有的五种构造:

https://blog.csdn.net/sandalphon4869/article/details/94589399#1_15

#include #include using namespace std; int main() { vector k{ 1,2,3 }; //vector* p=&k; vector* p; p = &k; for (int i = 0; i size(); i++) { cout vector k{ 1,2,3 }; p = &k; } for (int i = 0; i size(); i++) { cout 1,2,3 }; vector k{ 4,5,6 }; p = &k; for (int i = 0; i size(); i++) { cout 1,2,3 }; { vector k{ 4,5,6 }; p = &k; } for (int i = 0; i size(); i++) { cout 1,2,3 }; for (int i = 0; i size(); i++) { cout cout cout p = new vector{ 1,2,3 }; } for (int i = 0; i size(); i++) { cout 1,2,3 }, b{ 4,5,6 }, c{7,8,9,10}; //写法1 vector* p[3] = { &a,&b,&c }; /* //写法2 vector* p[3]; p[0] = &a, p[1] = &b, p[2] = &c; */ for (int i = 0; i cout vector a{ 1,2,3 }, b{ 4,5,6 }, c{ 7,8,9,10 }; p[0] = &a, p[1] = &b, p[2] = &c; } for (int i = 0; i cout 1,2,3 }; p[1] = new vector(3); p[2] = new vector(4, 1); for (int i = 0; i cout p[0] = new vector{ 1,2,3 }; p[1] = new vector(3); p[2] = new vector(4, 1); } for (int i = 0; i cout int a = 1, b = 2, c = 3; v.push_back(&a); v.push_back(&b); v.push_back(&c); } for (int i = 0; i


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3