gpt4 book ai didi

c++ - 如何使用数组表设置配置参数?

转载 作者:太空宇宙 更新时间:2023-11-04 14:25:11 26 4
gpt4 key购买 nike

以下情况:我有一个数组,其中包含一些常量值,代表范围。
范围总是在数组中的两个值之间,例如:10 - 20 = range1
20-30 = range2 等等...

const int arr[] = {10, 20, 30, 40, 50, 60};

使用搜索功能,我在 arr[] 中搜索这些范围之间的数字 (val),并返回找到 val 的范围索引。
例如:如果 val = 15 → 返回值将是 1
如果 val = 33 → 返回值为 3

int Search(const int arr[], int n, int val)
{
int i = 0;

while (i < n) {
if (val > arr[i])
++i;
else
return i;
}
return -1;
}

好的,到目前为止一切正常...

现在遇到以下问题:我有一些参数,我们称它们为 x、y、z,它们是简单的整数,它们取决于 val 的值。x, y, z 的参数值我在编译前就已经知道了,当然每个范围都是不同的。
我现在如何使用范围索引设置 x、y 和 z?例如,我如何使用 x、y、z 的常量参数值创建一个数组,并根据返回的范围索引设置它们?或者它应该是一个结构?那会是什么样子……?

谢谢

最佳答案

您可以在struct 中保存每个范围的参数:

struct range_parameters {
int x;
int y;
// etc
}

并将所有这些结构保存在 std::vector 中:

std::vector<range_parameters> params;

添加数据将像这样完成:

range_parameters params_for_range_1;
params_for_range_1.x = 1;
params_for_range_1.y = 2;

params[0] = params_for_range_1;

所以最后你可以访问范围 n 的参数作为 params[n-1]

关于c++ - 如何使用数组表设置配置参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4508095/

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