【发布时间】:2019-07-18 09:08:58
【问题描述】:
谁能告诉我C++/STL中是否有一种数据类型可以让我轻松解决以下问题:
- 我有一个预分配的连续内存区域,表示 T 类型的对象数组。
- 我有一个指向该区域的原始指针 ptrEnd,它指向该区域的最后一个对象之后。
- 我有一个指针 ptrCurrent 指向该区域内的某个位置。
现在我想要的是某种包装类,它可以帮助我将新元素插入该区域。它应该有某种“附加”功能,基本上做以下事情
- 将 *ptrCurrent 赋值为要插入的对象的值
- 将 ptrCurrent 增加一。
- 如果 ptrCurrent >= ptrEnd,则省略上述步骤。改为返回错误(或返回 false 表示失败)。
我可以自己写这样的东西,但我想先问一下 C++ STL 中是否有一个类可以让我更优雅地解决这个问题。
感谢您的帮助。
【问题讨论】:
-
STL 类中没有你想要的“错误返回”,所以我想你必须自己写一个,但这应该不难。
-
你的意思可能不是the stl。
-
C++ 标准库。随便。