如果括号内的语句更改了向量中的值

时间:2015-11-28 02:33:20

标签: c++

我有以下问题。

我有两个向量correct_data_labels.label和data_labels.label,label是{​​{1}}而data_labels和correct_data_labels是我的类的实例。

我有一个方法,我在其中有if语句。当我使用IF语句时,我在括号内使用的参数执行算术并更改值。如下面的代码所示:当我运行代码时,它会替换IF语句中写入的值。因此vector<int >替换为data_labels.label[row]

correct_data_labels.label[row]

这段代码是用c ++编写的,我想其他编程范例也可以回答上述问题。

1 个答案:

答案 0 :(得分:1)

您使用了赋值运算符=而不是等于运算符==。您可能会收到关于它的警告,这就是为什么在表达式周围有一组额外的括号:suggest parentheses around assignment used as truth value(至少在我的编译器上)

=替换为==以进行比较,而不是分配。