gpt4 book ai didi

c++ - 如何将数组部分初始化为某个默认值?

转载 作者:行者123 更新时间:2023-12-01 14:09:15 29 4
gpt4 key购买 nike

我有一个数组(例如, unsigned int arr[1000] )。
我想像这样初始化数组的元素..

arr = {4, 10, 34, 45, 6, 67, UINT_MAX, UINT_MAX .. 994 times}
那是在我分配一些值之前,我希望数组中的默认值是 UINT_MAX。
有没有办法做到这一点?
当然 for 循环总是存在的,但除此之外还有其他任何方式。

最佳答案

请使用 2 阶段方法。首先,使用初始化列表,然后用 std::fill 填充其余部分

#include <limits>
#include <algorithm>

constexpr size_t ArraySize = 1000U;

int main() {
int arr[ArraySize] = { 4,10,34,45,6,67 };

std::fill(arr + 6U, arr + ArraySize, std::numeric_limits<int>::max());

return 0;
}

关于c++ - 如何将数组部分初始化为某个默认值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62750151/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com