vector 基础2
size :返回有效元素个数
max_size :返回 vector 支持的最大元素个数
resize :改变有效元素的个数
capacity :返回当前可使用的最大元素内存块数(即存储容量)
empty :判断是否为空
reserve :请求改变存储容量
shrik_to_fit :请求移除未使用的存储空间
std::vector<int> foo;
for (int i = ; i<; i++) foo.push_back(i);
std::cout << "size: " << (int)foo.size() << '\n';
std::cout << "capacity: " << (int)foo.capacity() << '\n';
std::cout << "max_size: " << (int)foo.max_size() << '\n';
foo.resize();
foo.resize(, );
foo.resize();
for (int i = ; i < foo.size(); i++)
std::cout << ' ' << foo[i];
std::cout << std::endl; int sum();
while (!foo.empty())
{
sum += foo.back();
foo.pop_back();
}
std::cout << "total: " << sum << '\n'; foo.reserve(); //设置最小容量,返回值大于等于这个值
std::cout << "capacity: " << (int)foo.capacity() << '\n'; //200,如果设置100,这里是141 foo.resize();
foo.shrink_to_fit(); //请求移除不使用的空间
std::cout << "capacity: " << (int)foo.capacity() << '\n'; //
[] at
front 访问第一个元素
back 访问最后一个元素
data 返回当前向量内部数组的指针
#include <iostream>
#include <vector> int main()
{
std::vector<int> foo();
int* p = foo.data();
*p = ;
++p;
*p = ;
p[] = ;
std::cout << "foo.front() is now " << foo.front() << std::endl;
std::cout << "foo:";
for (unsigned i = ; i<foo.size(); ++i)
std::cout << ' ' << foo[i];
std::cout << std::endl; return ;
}
vector 基础2的更多相关文章
- vector基础
//STL基础 //容器 //vector #include "iostream" #include "cstdio" #include "vecto ...
- vector基础操作
//vector< T> vec; //构造一个名为vec的储存数据类型为T的动态数组.其中T为需要储存的数据类型 //初始时vec为空 //push_back 末尾添加一个元素 //po ...
- vector 基础
http://classfoo.com/ccby/article/jnevK Vector的存储空间是连续的,list不是连续存储的 vector初始化 vector<int>v; //不 ...
- 66)vector基础总结
基本知识: 1)vector 样子 其实就是一个动态数组: 2)vector的基本操作: 3)vector对象的默认构造 对于类 添加到 容器中 要有 拷贝构造函数---> 这个注意 ...
- Android Vector曲折的兼容之路
Android Vector曲折的兼容之路 两年前写书的时候,就在研究Android L提出的Vector,可研究下来发现,完全不具备兼容性,相信这也是它没有被广泛使用的一个原因,经过Google的不 ...
- java数据结构-Vector
1 Vector基础实现为数组 object[] synchronized线程安全 2 扩容使用 System.arraycopy(original, 0, copy, 0,Math.min(ori ...
- C++【vector】用法和例子
/*** * vector 基础api复习 * 8 AUG 2018 */ #include <iostream> #include <vector> using namesp ...
- Faster-RCNN tensorflow 程序细节
tf-faster-rcnn github:https://github.com/endernewton/tf-faster-rcnn backbone,例如vgg,conv层不改变feature大小 ...
- [Java] 集合框架原理之一:基本结构与源码分析
一.Collection Collection 接口定义了一些基本的方法: int size(); boolean isEmpty(); boolean add(E e); boolean addAl ...
随机推荐
- elasticsearch 5.x 系列之五 数据导入导出
一.首先给大家发一个福利,分享一个elasticsearch 数据导出工具. esm github 源码地址: https://github.com/medcl/esm 下载编译好的对应elastic ...
- python学习之控制流2
配置环境:python 3.6 python编辑器:pycharm 代码如下: #!/usr/bin/env python #-*- coding: utf-8 -*- # 控制流语句: # if语句 ...
- linux几条基本命令和解释
pwd 查看当前目录/ 根目录ls 查看当前目录所包含文件ls -l 查看当前目录所包含文件的详细信息d rwx rwx r-x 1 root root1 2 3 4 ...
- 人人都会设计模式:观察者模式--Observer
https://segmentfault.com/a/1190000012295887 观察者模式是抽像通知者和观察者,达到具体通知者跟具体观察者没有偶合.能达到不管是切换通知者,或者是切换观察者,都 ...
- UVA11988 Broken Keyboard (a.k.a. Beiju Text)【数组模拟链表】
参考:https://blog.csdn.net/lianai911/article/details/41831645 #include <iostream> #include <c ...
- 【Leetcode】807. Max Increase to Keep City Skyline
Description In a 2 dimensional array grid, each value grid[i][j] represents the height of a building ...
- 使用 MySQL 存储 Hue 元数据
1.在 MySQL 中增加数据库 hue 2.编辑 hue.ini 文件 [[database]] # Database engine is typically one of: # postgresq ...
- Django学习之天气调查实例(3):部署静态文件CSS、JS、images等(部署环境基于Ubuntu)
在设计登录界面时,采用了网上下载的登录模板,漂亮,简易.但是在测试和部署时,发现原来模板中采用的js文件和css文件,却着实让我折腾了好几天. 在以往的网页设计中,一般只要把测试站点开启后,网页中的静 ...
- IDLE激活方法
激活流程 一.通过Activation code 方式激活, 注册码获取地址为:http://idea.lanyus.com/ 在idea或者pycharm的Activation code中输入 注册 ...
- (原)一段看似美丽的for循环,背后又隐藏着什么
之前很长一段时间,潜心修炼汇编,专门装了一个dos7,慢慢玩到win32汇编,再到linux的AT&A汇编,尝试写mbr的时候期间好几次把centos弄的开不了机,又莫名其妙的修好了,如今最大 ...