vector转换成数组
std::vector,内部存储的所有元素,都是占用一片连续的内存空间。因此,比较好的做法就是直接取第一个元素的地址,得到了首地址,之后的做法与数组也是大同小异了。
举例说明。
假设函数Func需要以数组的方式传递,函数原型如下:
void Func(double* pDataAddress, size_t nDataCount);
那么,如果使用数组,调用的方法如下:
double data[30];
Func(data, 30);
而使用vector,调用的方法如下:
std::vector<double> data(30);
Func(&data[0], data.size());
需要注意的地方:
1、如果vector长度为零,那就不能取得第一个元素的地址。因为此时第一个元素还不存在。程序注意判断。
2、如果vector的长度变长(例如:不停地进行push_back),那可能导致之前取得的地址变为无效。为了安全,每次进行push_back, insert, assign之类的操作之后,就需要重新取得第一个元素的地址。因为之前取得的地址可能已经无效了。
vector转换成数组相关推荐
- php处理微信返回xml数据,php将微信返回的xml格式转换成数组
废话不多说直接上代码 代码<?php header("Content-type: text/html; charset=utf-8"); date_default_timez ...
- 如何将伪数组转换成数组
如何将伪数组转换成数组 如何将伪数组转换成数组?这里把符合以下条件的对象称为伪数组 1,具有length属性 2,按索引方式存储数据 3,不具有数组的push,pop等方法 如 1,function内 ...
- php 将一个字符串转换成数组,PHP将一个字符串转换成数组
PHP将一个字符串转换成数组,支持中文/** * 将一个字符串转换成数组,支持中文 * @param string $string 待转换成数组的字符串 * @return string 转换后的数组 ...
- 将null转换成数组_Javscript数组快速填充数据的8种方法
前言 日常开发过程中经常会遇到模拟数据填充的问题.也就是造一些假数据,方便自己调试和开发.由此,整理了常用的数据填充的方法,在自己学习的过程中,也分享给更多开发者.一起学习,一起加油,一起精进. fi ...
- doctrine find的对象转换成数组_「ES6基础」Array数组的新方法(上)
在日常工作中我们经常会与数组打交道,因此需要熟练掌握数组操作的相关方法,ES6中关于数组的操作,又给我们带来了哪些惊喜呢,Array数组操作又添加了哪些新方法? 本篇文章将从以下几个方面进行介绍: A ...
- php7对象转换成数组,php 如何把对象转换成数组对象
php把对象转换成数组对象的方法:首先打开相应的PHP代码文件:然后通过"function array_to_object($arr){...}"方法把对象转换成数组即可. 本文操 ...
- php函数用竖线隔开,用指定的分隔符号把字符串转换成数组《 PHP 基础 》
现在我这里有一个字符串 ... 就是这个 $tracks ... 它的值是用竖线分隔开的一些文字 ... 使用 explode 函数 ... 我们可以使用竖线作为分隔符,把这个字符串转换成一个数组. ...
- php将对象转换成数组
* @todo 将对象转换成数组 * @param unknown_type $obj * @return unknown */ function objec ...
- php下载数组里的图片,php 读取txt文件中的内容,转换成数组,根据URL将图片下载到本地(curl爬取)...
link.txt文件内容(注意地址可以无限多) https://youimg1.c-ctrip.com/target/100m1f000001gzojc0664_D_521_391.jpg https ...
最新文章
- 美多商城之用户中心(收货地址3)
- Mac下pycharm如何安装tensorflow
- mysql 字段字节_MySql字段类型及字节
- jQuery Mobile学习笔记
- PHP语言 -- 文件上传
- 创业 4 年获近 7000 万美元融资,53 岁老程序员 all in 开源
- date字段 http 头文件_HTTP头文件获取
- php 获取手机信息
- 图解:卷帘快门(Rolling_shutter)与全局快门(global_shutter)的区别
- WordPress实现点击标签云中的某一标签,就展示出此标签下的所有文章
- 基于OpenCV实现简单人脸面具、眼镜、胡须、鼻子特效(详细步骤 + 源码)
- 添加图书的代码C语言,C语言图书系统代码.doc
- 实验一 验证删除快照时VMware会改变父快照或基础磁盘
- 外汇交易与实务--即期外汇交易
- Linux从入门到精通5
- 软件测试工程师笔试题带答案(二)
- vs2015上安装小番茄插件
- 支付宝事件溯源:2005年“雅巴“交易再回首
- 特斯拉股价周三开盘上涨近7% 因Q2交付量创纪录缓解了需求担忧
- VQA系列论文(五)
热门文章
- 安卓使用ffmpeg给视频添加字幕
- 计算几何与图形学有关的几种常用算法(一)
- 在服务器上备份文件的命令行,使用 Stsadm 命令行工具备份服务器场 (Search Server 2008)...
- 全球及中国家庭保健医疗箱行业规划建议及投资动向分析报告2021年版
- 2022广东最新高级消防员模拟试题题库及答案
- 最新版海豚调度dolphinscheduler-3.1.3配置windows本地开发环境
- 中国软件业还有多少商机
- 平滑选区边缘(加深减淡工具篇)
- Html+Css+js实现计时器
- 争对让望对思野葛对山栀注解_争对让望对思野葛对山栀注解_望对思的上句,望对思的上一句是...