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转换成数组相关推荐

  1. php处理微信返回xml数据,php将微信返回的xml格式转换成数组

    废话不多说直接上代码 代码<?php header("Content-type: text/html; charset=utf-8"); date_default_timez ...

  2. 如何将伪数组转换成数组

    如何将伪数组转换成数组 如何将伪数组转换成数组?这里把符合以下条件的对象称为伪数组 1,具有length属性 2,按索引方式存储数据 3,不具有数组的push,pop等方法 如 1,function内 ...

  3. php 将一个字符串转换成数组,PHP将一个字符串转换成数组

    PHP将一个字符串转换成数组,支持中文/** * 将一个字符串转换成数组,支持中文 * @param string $string 待转换成数组的字符串 * @return string 转换后的数组 ...

  4. 将null转换成数组_Javscript数组快速填充数据的8种方法

    前言 日常开发过程中经常会遇到模拟数据填充的问题.也就是造一些假数据,方便自己调试和开发.由此,整理了常用的数据填充的方法,在自己学习的过程中,也分享给更多开发者.一起学习,一起加油,一起精进. fi ...

  5. doctrine find的对象转换成数组_「ES6基础」Array数组的新方法(上)

    在日常工作中我们经常会与数组打交道,因此需要熟练掌握数组操作的相关方法,ES6中关于数组的操作,又给我们带来了哪些惊喜呢,Array数组操作又添加了哪些新方法? 本篇文章将从以下几个方面进行介绍: A ...

  6. php7对象转换成数组,php 如何把对象转换成数组对象

    php把对象转换成数组对象的方法:首先打开相应的PHP代码文件:然后通过"function array_to_object($arr){...}"方法把对象转换成数组即可. 本文操 ...

  7. php函数用竖线隔开,用指定的分隔符号把字符串转换成数组《 PHP 基础 》

    现在我这里有一个字符串 ... 就是这个 $tracks ... 它的值是用竖线分隔开的一些文字 ... 使用 explode 函数 ... 我们可以使用竖线作为分隔符,把这个字符串转换成一个数组. ...

  8. php将对象转换成数组

    * @todo 将对象转换成数组      * @param unknown_type $obj      * @return unknown      */       function objec ...

  9. php下载数组里的图片,php 读取txt文件中的内容,转换成数组,根据URL将图片下载到本地(curl爬取)...

    link.txt文件内容(注意地址可以无限多) https://youimg1.c-ctrip.com/target/100m1f000001gzojc0664_D_521_391.jpg https ...

最新文章

  1. 美多商城之用户中心(收货地址3)
  2. Mac下pycharm如何安装tensorflow
  3. mysql 字段字节_MySql字段类型及字节
  4. jQuery Mobile学习笔记
  5. PHP语言 -- 文件上传
  6. 创业 4 年获近 7000 万美元融资,53 岁老程序员 all in 开源
  7. date字段 http 头文件_HTTP头文件获取
  8. php 获取手机信息
  9. 图解:卷帘快门(Rolling_shutter)与全局快门(global_shutter)的区别
  10. WordPress实现点击标签云中的某一标签,就展示出此标签下的所有文章
  11. 基于OpenCV实现简单人脸面具、眼镜、胡须、鼻子特效(详细步骤 + 源码)
  12. 添加图书的代码C语言,C语言图书系统代码.doc
  13. 实验一 验证删除快照时VMware会改变父快照或基础磁盘
  14. 外汇交易与实务--即期外汇交易
  15. Linux从入门到精通5
  16. 软件测试工程师笔试题带答案(二)
  17. vs2015上安装小番茄插件
  18. 支付宝事件溯源:2005年“雅巴“交易再回首
  19. 特斯拉股价周三开盘上涨近7% 因Q2交付量创纪录缓解了需求担忧
  20. VQA系列论文(五)

热门文章

  1. 安卓使用ffmpeg给视频添加字幕
  2. 计算几何与图形学有关的几种常用算法(一)
  3. 在服务器上备份文件的命令行,使用 Stsadm 命令行工具备份服务器场 (Search Server 2008)...
  4. 全球及中国家庭保健医疗箱行业规划建议及投资动向分析报告2021年版
  5. 2022广东最新高级消防员模拟试题题库及答案
  6. 最新版海豚调度dolphinscheduler-3.1.3配置windows本地开发环境
  7. 中国软件业还有多少商机
  8. 平滑选区边缘(加深减淡工具篇)
  9. Html+Css+js实现计时器
  10. 争对让望对思野葛对山栀注解_争对让望对思野葛对山栀注解_望对思的上句,望对思的上一句是...