c++ - 从已知大小的 double 组构造 std::vector<double>

标签 c++ c++11 vector initialization

我有一个指向 double 组第一个元素的指针:double* p

我也知道数组的长度:n

有没有办法将其复制到 std::vector 中?最好使用构造函数和分配器。我想做类似的事情

std::vector<double> v = std::vector(p, n);

但无法确定哪个构造函数最接近此。我正在使用 C++11。

最佳答案

std::vector<>有一个采用范围的构造函数。你可以像这样使用它:

std::vector<double> v(p, p + n);

关于c++ - 从已知大小的 double 组构造 std::vector<double>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22692450/

相关文章:

c++ - 什么是复制省略和返回值优化?

c++ - 用宏隐藏 void* 指针的机制

c++ - 直接访问唯一的类数据成员

c++ - 运算符>> 在带有 std::ignore 的绑定(bind)元组上

c++ - 显式动态链接 dll 时使用 std::unique_lock 会破坏 XP 兼容性

c++ - 为什么我在 dev c++ 中使用 "gets function"后不能使用 "cin function"?

c++ - 是否可以在不向函数传递参数的情况下获取函数的返回类型?

c++ - vector 重新分配导致 malloc 错误

c++ - vector 迭代器不可取消引用。成对的优先队列。

vector - 三.js 如何求物体局部Up向量的世界方向向量?