比较if语句中的数组值和int值
Compare an array value to an int value within an if statement
我在编写一个条件if语句时遇到了问题,该语句将数组的一个条目与initger值进行比较
void test_part3(triangleWcolor ArrayIn[], triangleWcolor ArrayOut[], triangleWcolor perimiter[], triangleWcolor max_val[], int arraysize)
{
for(int i=0; i<arraysize; i++)
{
triangleWcolor perimiter[arraysize];
ArrayIn[i].inputRandomValues();
cout << "Input Array" << endl;
ArrayIn[i].printInfo();
ArrayIn[i].getPerimiter();
perimiter[i]=ArrayIn[i].getPerimiter();
}
for(int i=0; i< arraysize; i++)
{
if(perimiter[i]<75 && perimiter[i]>25]
{
cout << "Output Array Values" << endl;
ArrayOut[i] = ArrayIn[i];
ArrayOut[i].printInfo();
}
}
}
printInfo((;inputRnadomValues((;和getPerimiter((;函数都位于头文件中的结构"triangleWcolor"中。我已经通过调试验证了这些都能为我提供所需的输出。当我尝试运行这段代码时,我得到消息:[Error]不匹配'operator<'(操作数类型为"triangleWcolor"answers"int"(
既然如此,我想知道是否有人对我应该如何进行有任何建议?
谢谢。
错误很明显,您正在将对象triangleWcolor与int:进行比较
'operator<' (operand types are 'triangleWcolor' and 'int')
如果triangleWcolor是一个枚举,您可以尝试对其进行static_cast,但您应该确保这仍然有意义(枚举值是连续的(
如果不转换结构,就无法将其与int进行比较。
如果你不想转换它,那么我建议在你的结构中创建一个int,并将这两个int进行比较。
相关文章:
- 按字符值访问int数组
- 将 int 数组转换为 std::vector<int*>
- C++,在int数组中输入字符串或字符会输出0,而不是ascii或error
- 整数区间(或 int 数组)中每个数字的出现次数
- Int 数组到C++容器
- C++ 未初始化的本地(非全局)int 数组中的元素类型到底是什么?
- 如何检测将文本文件读入 int 数组的新行
- C++快速将 int 数组内容转储到文本文件中
- <string> 如何在使用 SWIG 时将 int 数组和 List 作为参数传递给 C# C++
- 如何制作不允许重复值的 C++ int 数组循环?
- 如何将逗号分隔的文件读取为 2D int 数组?
- int 数组,但索引是字符?
- 使用可变参数函数将整数和/或整数数组放入单个 int 数组中
- 将 int 数组转换为带有小数C++的双精度数组
- 将双精度值分配给 int 数组时的类型转换
- 已编辑 我如何将其拆分为 char 和 int 数组
- 从 C++ 中的 int ** 数组访问元素
- C++程序无法分配 int 数组?
- 我正在编写一个代码来将 int 数组存储在文件中,然后用 c++ 检索它,但是检索第一项是假值,我该如何解决这个问题?
- 如何通过头文件中的函数初始化 const int 数组?