C++ std::vector 括号中的参数 - 解释?
C++ std::vector arguments in brackets - explanation?
我对 C++ 没有经验。我遇到了以下代码
std::vector<char> is_prime(sqrt + 1, 1);
更新 其中sqrt为正整数。
我相信它是在定义一个充满字符的向量,将向量命名为is_prime,但我不明白这两个参数的目的是什么。
我已经查看了 std::vector 的文档,但是我并不清楚。我也搜索过 SO 但毫无疑问我发现有帮助。
示例:假设 sqrt 为 4,则这将生效:
is_prime(5, 1);
这是否意味着它是一个包含元素 5 和 1 的向量?大小为 5 且第一个元素为 1 的向量?
第一个参数是 "Initial container size",第二个参数是 "Value to fill the container with. Each of the n elements in the container will be initialized to a copy of this value."
可能是vector构造函数的第二种形式
http://www.cplusplus.com/reference/vector/vector/vector/
vector (size_type n, const value_type& val = value_type(),
const allocator_type& alloc = allocator_type());
这将用 sqrt + 1 个元素填充一个字符向量,所有元素都设置为任何 1 作为字符。
我对 C++ 没有经验。我遇到了以下代码
std::vector<char> is_prime(sqrt + 1, 1);
更新 其中sqrt为正整数。
我相信它是在定义一个充满字符的向量,将向量命名为is_prime,但我不明白这两个参数的目的是什么。
我已经查看了 std::vector 的文档,但是我并不清楚。我也搜索过 SO 但毫无疑问我发现有帮助。
示例:假设 sqrt 为 4,则这将生效:
is_prime(5, 1);
这是否意味着它是一个包含元素 5 和 1 的向量?大小为 5 且第一个元素为 1 的向量?
第一个参数是 "Initial container size",第二个参数是 "Value to fill the container with. Each of the n elements in the container will be initialized to a copy of this value."
可能是vector构造函数的第二种形式 http://www.cplusplus.com/reference/vector/vector/vector/
vector (size_type n, const value_type& val = value_type(),
const allocator_type& alloc = allocator_type());
这将用 sqrt + 1 个元素填充一个字符向量,所有元素都设置为任何 1 作为字符。