当前位置:首页 > C++学习笔记
c.rend() 传回一个逆向队列的最后一个数据的下一个位置。 c.reserve() 保留适当的容量
c.begin() 返回指向容器第一个元素的迭代器(相当于返回指针中的首地址似的) c.end() 返回指向容器最后一个元素的迭代器
vector的初始化
vector
你可以在定义容器时为它赋初值,定义一个容纳100个int型数据的容器,初值赋为0 vector
创建一个包含500个Widget类型数据的vector,并且都初始化为0:
vector
访问vector中的数据的方法: 1、 vector::at()
2、 vector::operator[]
operator[]主要是为了与C语言进行兼容。它可以像C语言数组一样操作。但at()是我们的首选,因为at()进行了边界检查,如果访问超过了vector的范围,将抛出一个例外
容器之间,可以用=号,直接赋值
迭代器与容器的关系:
对于容器,使用迭代器操作容器中对应位置的值,当迭代器指向了容器中的某位置,则可以使用 * 加迭代器操作该位置了
迭代器的定义方式:
std::vector
用vector定义二维数组:
链表:动态链表
三个指针head,p1,p2(一个用来不断开辟内存,接受外来存储量)该链表只有存储功能,无插入,删除等功能
#include
int data; student *next;
int n;
struct student * create() { }
int main() {
} free(p);
system(\); return 0; student *p;
p = (student *)malloc(sizeof(student)); p=create(); while (p != NULL) {
cout << p->data << endl; p = p->next; n = 0;
struct student *head = NULL; struct student *p1, *p2;
p1 = p2 = (struct student *)malloc(sizeof(struct student)); cout << \请输入数据,注意:当输入为0时,表示输入结束\ << endl; cin >> p1->data; while (p1->data) { }
p2->next = NULL; return (head);
++n; if (n == 1)
head = p1; p2 ->next= p1; else p2 = p1;
p1 = (struct student *)malloc(sizeof(struct student)); cin >> p1->data; p2->next = p1; p2 = p1;
共分享92篇相关文档