- 主题:std:vector怎么做截取?
已经有了一个vector A了
现在想截取vector A的某一段,譬如第3-10个元素,
要求形成一个新的vector B,但是其实际还是存储在原先的vector中,怎么做?
实际中有不少这样的需求。你需要用新的vector B去到第三方库中进行调用,但是又不想重复分配资源。
--
FROM 58.246.115.*
span是不是要改接口?
但是第三方库动不了。
【 在 perduamour 的大作中提到: 】
:
: C++20中的std::span
--
FROM 58.246.115.*
swap能交换出片段的地址么?
移动copy是有可行性
能否给个例子?
【 在 poggy 的大作中提到: 】
:
: 为什么要两个动态对象共享一块内部存储? 如果一个动态扩充,重新分配并释放旧的内存,
: 另一个就失效了。
: ...................
--
FROM 58.246.115.*
谢谢,感觉不太能满足需求。
感觉自定义Allocator是否能够满足?其实就相当于一个Vecotor的元素引用一个已经存在的大的连续内存中的某一个连续的块。
【 在 poggy 的大作中提到: 】
:
: 你的需求我理解就是取vector的一部分, 就假定是连续的部分吧
: 一种是元素太大, 比如是对象, 那么可以考虑用move构造
: ...................
--
FROM 101.88.101.*