先看一段代码:

vector<vector<int>> allrot(const vector<int>& a)
{  vector<vector<int>> result;for (int i = 0; i < a.size(); i ++ ){rotate(a.begin(), a.begin() + 1, a.end());result.push_back(a);}return result;
}

当vector当作形参输入到函数时,有两种方法:

vector<int>& a;
vector<int> a;

参考:stackoverflow-Cpp-Vector
带&表示传入函数的是vector的引用(即物理位置),函数内部对vector改动,vector就会改变;
不带&表示传入的是vector的复制品(开辟了另一块位置),函数内部对其改动,不会影响原本的vector;

原英文解释如下:

When you pass vector<int> then function gets a copy of that vector. You can do anything you want with it in the function and your original data would not change.
When you pass vector<int>& then function gets the reference which means that any changes in the function would modify the original data.

C++中vector<int> nums和vector<int> nums的区别相关推荐

  1. Boost:在GPU上对int的std :: vector进行排序

    Boost:在GPU上对int的std :: vector进行排序 实现功能 C++实现代码 实现功能 Boost的compute模块,在GPU上对int的std :: vector进行排序 C++实 ...

  2. 数组赋值给vector和list,顺便说明int和size_t的区别

    如果a是数组,那么a.size() 返回的类型是size_t类型. 数组赋值给vector或者list,可以采用地址. #include <iostream> #include <s ...

  3. C++中vector章节iterator与const_iterator及const iterator区别

    C++目前倾向于使用迭代器遍历容器中的元素,而不是使用下标访问的方式来访问容器中的元素. 可以使用iterator和const_iterator来访问元素,但是const类型的容器,那么只能用cons ...

  4. C++中标准模板库std::vector的实现

    以下实现了C++标准模板库std::vector的部分实现,参考了 cplusplus. 关于C++中标准模板库std::vector的介绍和用法可以参考 https://blog.csdn.net/ ...

  5. vector 作为dll 接口参数_DLL中传递STL参数,vector对象作为dll参数传递等问题(转)...

    STL使用模板生成,当我们使用模板的时候,每一个EXE,和DLL都在编译器产生了自己的代码,导致模板所使用的静态成员不同步,所以出现数据传递的各种问题,下面是详细解释. 原因分析:一句话-----如果 ...

  6. Java中最早期的集合Vector

    1.Vector类可以实现可增长的对象数组.与数组一样,它包含可以使用整数索引进行访问的组件.但是,Vector 的大小可以根据需要增大或缩小,以适应创建 Vector 后进行添加或移除项的操作. 2 ...

  7. C++中的数组array和vector,lambda表达式,C字符串加操作,C++中新类型数组(数组缓存),多元数组,new缓冲

     使用C++风格的数组,不需要管理内存. array要注意不要溢出,因为它是栈上开辟内存. array适用于任何类型 #include<iostream> #include<ar ...

  8. [转贴]从零开始学C++之STL(二):实现一个简单容器模板类Vec(模仿VC6.0 中 vector 的实现、vector 的容量capacity 增长问题)...

    首先,vector 在VC 2008 中的实现比较复杂,虽然vector 的声明跟VC6.0 是一致的,如下: C++ Code  1 2   template < class _Ty, cla ...

  9. vector用法 java_java.util.vector中的vector的详细用法

    /** *演示Vector的使用.包括Vector的创建.向Vector中添加元素.从Vector中删除元素.*统计Vector中元素的个数和遍历Vector中的元素.*/ public class ...

最新文章

  1. group_concat
  2. 2021下信息系统项目管理师真题及答案解析
  3. 当退出python时是否释放全部内存_Python面试题:高级特性考察
  4. android jni ndk 视频分享
  5. [Lua学习]简单链表
  6. 关于施加在 div 标签上的 ngTemplateOutlet 指令让 div class 丢失的问题调试
  7. 使用函数指针实现父类函数调用子类函数的两种方式
  8. Abp Uow 设计
  9. java中super_java中super的两种用法
  10. python接球游戏
  11. 【Eclipse】Eclipse-Build-缓慢-卡住
  12. 打开Excle出现配置进度解决方法
  13. RF修改服务器设置,3-RF服务端程序安装手册V1.0(7页)-原创力文档
  14. html5中正则表达式怎么加,HTML5中的字母正则表达式(Alphabetic Regex in HTML5)
  15. uniapp获取屏幕宽度的方式_uni-app如何实现rem自适应手机屏幕尺寸?
  16. Cython使用问题集合
  17. led屏背后线路安装图解_科普:网格屏是什么意思?LED网格屏怎么安装
  18. 计算机专业考计量经济学,计量经济学期末考试题库(完整版)及答案()(47页)-原创力文档...
  19. 计算机的运作流程的个人感想
  20. 路由器中的DMZ功能是什么?

热门文章

  1. 热启动计算机的快捷键,电脑怎么设置U盘启动 各品牌电脑热启动快捷键大全-电脑教程...
  2. edvac是商用计算机吗,计算机基础知识78228
  3. 有一个已经排好序的数组,今输入一个数,要求按照原来排序的规律将它插入数组中
  4. FX5U MODBUS_TCP通讯
  5. 关于LocalDateTime的全局返回时间带“T“的时间格式处理
  6. 如何启动 WordPress 博客 – 简易指南 – 创建博客(2021)
  7. C的指针疑惑:C和指针17(经典抽象数据类型)
  8. docker基础篇--有它就够了
  9. 黑客为“炫技”随机攻击,结果被“顺着网线”抓了
  10. 88E1111 100BASE-T百兆工程(part2--完)