我需要一个元素容器,这些元素既不可复制也不可移动。这些元素不能被默认构造,但它们的构造函数会接收相同的参数。
该容器在其生命周期内大小不会改变。它应该像内置数组一样简单,但是它的大小在运行时调用构造函数时确定。
有没有一种简单的方法可以实现它,而不需要使用std::vector>所产生的内存分配和间接开销?
该容器在其生命周期内大小不会改变。它应该像内置数组一样简单,但是它的大小在运行时调用构造函数时确定。
有没有一种简单的方法可以实现它,而不需要使用std::vector>所产生的内存分配和间接开销?
new
的元素放置的解决方案。 - LogicStuffstd::vector<T>
无法编译非可复制和非可移动的T
类型。使用emplace()
插入元素需要向量增长(可能)。增长操作需要元素可以被复制或移动。 - Ralph Tandetzky&v[0]
来访问存储,就像C风格的数组一样? - M.M