社区
工具平台和程序库
帖子详情
把一个vector append到另外一个vector
vertex
2003-11-26 05:36:06
我KAO, STL的vector怎么没有append这个成员函数呢? STL的泛型算法里我也没找到? 难道没有吗?
...全文
2067
12
打赏
收藏
把一个vector append到另外一个vector
我KAO, STL的vector怎么没有append这个成员函数呢? STL的泛型算法里我也没找到? 难道没有吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
abitz
2003-11-27
打赏
举报
回复
to jeckyz(深圳) ( )
vector< int > a, b;
a.push_back( &b ); // 我想像中这样可以编译
这个好像真不行,push_back的引数需要int,但 &b是vector *。
而且,就算加进去了也不行,那也不能支持随机访问.
abitz
2003-11-27
打赏
举报
回复
好像reserve好,resize会将多出的空间添上内容,这显然是没啥用处的
abitz
2003-11-27
打赏
举报
回复
to sevencat(七猫) :
啥叫reserver?reserve or resize?
个人觉得是resize好一点,但是从源码看来好像工作一样。
resize名好一点
sevencat
2003-11-27
打赏
举报
回复
对了,拷贝构造函数我还没算在里面。那样更厉害了。
还是楼上的提醒了我。
而且在构析函数里面还不能有一些像关闭文件之类的小动作,不然也会死得较惨。
cxjddd
2003-11-27
打赏
举报
回复
还要数数拷贝构造函数:)
sevencat
2003-11-27
打赏
举报
回复
reserver再copy,insert.
不用reserver你会死得很难看。
我有一次在vector中增加五个元素。结果调用构造函数5次,构析函数20次,全是重新分配的原因。
jeckyz
2003-11-27
打赏
举报
回复
是我写错了:
vector< vector< int >* > a;
vector< int > b;
a.push_back( &b );
不过访问确不好搞,呵呵。
cxjddd
2003-11-26
打赏
举报
回复
a.insert (a.end(), b.begin(), b.end());
jeckyz
2003-11-26
打赏
举报
回复
TO:abitz(阿奈)
所以我才不明白为什么楼主想这样用,按楼主的意思不就成了把内容复制一份了,那又跟append 一个 vector 有什么关系了。我说把 vector 的地址 append 确实是因为我想象中可以,我是把 vector 简单地当成一个数组来看待了,不过我是没试过。我是这么想的:
vector< int > a, b;
a.push_back( &b ); // 我想像中这样可以编译
如果真的错了,请原谅,我现在没法试。
abitz
2003-11-26
打赏
举报
回复
to jeckyz(深圳) :
把vector 的地址append好像不行吧?
vector 分配在连续的存储空间上,在任何时候它都要保持这一性质。
对“把vector的地址append“
一是好像没法作,
二是就算append了也就不是vector了,还不如早用list之类了事。
jeckyz
2003-11-26
打赏
举报
回复
push_back 和 back_insert 都可以啦,不过为什么楼主不是把vector的地址 append,而想把整一个 vector append
longworm
2003-11-26
打赏
举报
回复
vector<int> v1;
vector<int> v2;
copy(v1.begin(),v1.end(),back_inserter(v2)) // 把v1的内容append到v2后面
aja:Elixir标准库的扩展,侧重于数据结构,数据处理和性能
数据结构“函数式编程的
一个
方面是,编译器编写器方面的聪明之处可能不会减轻-使用劣等或不适当的数据结构。” -( 持久向量: A.
Vector
类似于Clojure的是列表的有效替代方法,在有效的恒定时间内支持附加操作和...
VC++如何将
vector
附加到另外
一个
同结构的
vector
中
2. **附加唯一元素的函数**:我们定义了
一个
名为 `
append
Unique` 的函数,该函数将 `source` 向量中的元素附加到 `target` 向量中,前提是该元素的姓名在 `target` 中不存在。3. **主函数**:在主函数中,我们创建了...
c++: 实战详解
vector
本文从实际使用的角度出发,简介C++中
vector
的基本用法,如增,删,改,查等,并举例说明。 增 如下代码演示如何向
vector
中添加元素,其中: #include <iostream> #include <
vector
> #include <...
C++
vector
定义
vector
:
vector
<element type> name(n); 其中,element type 表示元素类型,主要有 int 和 char 两种类型,n 表示
vector
容器中有多少元素。
vector
的扩展: 可以用元素索引来表示元素本身,而 ...
连接两个std::
vector
可以使用 std::copy 函数将
一个
vector
中的所有元素复制到另
一个
vector
中。 例如: std::
vector
<int> v1 {1, 2, 3}; std::
vector
<int> v2 {4, 5, 6}; v2.reserve(v1.size() + v2.size()); // 预留...
工具平台和程序库
24,855
社区成员
27,329
社区内容
发帖
与我相关
我的任务
工具平台和程序库
C/C++ 工具平台和程序库
复制链接
扫一扫
分享
社区描述
C/C++ 工具平台和程序库
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章