#include <iostream> |
将一个容器中的元素赋值给另一个不同类型的容器
预备知识:
编译运行程序后,输出结果:
1.c.assign(b,e):重新设置c的元素:将b和e标记的范围内的所有元素复制到c中。b和e必须不是指向c中元素的迭代器;
2.c.aggign(n,t):将容器c重新设置为存储n个值为t的元素;
3.assign操作首先删除容器中所有的元素,然后将其参数所指定的新元素插入到该容器中。如果在不同(或相同)类型的容器内,元素类型不相同但是相互兼容,则其赋值运算必须使用assign函数。例如,可通过assign操作实现将vector容器中一段char*类型的元素赋给string类型的list容器;
4.assign操作使左操作数容器的所有迭代器失效。
下面的程序将一个list容器中的所有元素赋值给一个vector容器,其中list容器中存储的是指向c风格字符串的char*指针,而vector容器的元素则是string类型(《C++ Primier》习题9.28)。
程序清单:
Yulingui zhouyujia gouyongpan sunlin
Yulingui zhouyujia gouyongpan sunlin
作者: longmenyu 发布时间: 2010-12-20