码迷,mamicode.com
首页 > 编程语言 > 详细

vector data() [c++11]

时间:2015-10-07 22:57:06      阅读:212      评论:0      收藏:0      [点我收藏+]

标签:

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// vector::data
#include <iostream>
#include <vector>

int main ()
{
  std::vector<int> myvector (5);

  int* p = myvector.data();

  *p = 10;
  ++p;
  *p = 20;
  p[2] = 100;

  std::cout << "myvector contains:";
  for (unsigned i=0; i<myvector.size(); ++i)
    std::cout << ‘ ‘ << myvector[i];
  std::cout << ‘\n‘;

  return 0;
}



Output:

myvector contains: 10 20 0 100 0

在c++11中,vector 增加了data()的用法,它返回内置vecotr所指的数组内存的第一个元素的指针。

 int* p = myvector.data();则p指向myvector的第一个元素指针,而
 ++p;则p指向了myvector的第二个指针,也即p[0]为myvector的第二个元素,则p[2]指向myvector的第四个元素。其他同理。有不懂得同学可以留言

vector data() [c++11]

标签:

原文地址:http://www.cnblogs.com/guxuanqing/p/4859578.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!