C++ 在C+;中使用-binary运算符时出现警告+;从变量中去掉int。原因是什么?

C++ 在C+;中使用-binary运算符时出现警告+;从变量中去掉int。原因是什么?,c++,arithmetic-expressions,C++,Arithmetic Expressions,我有一个函数,它有一个整数作为形式参数: string function1(int hundreds) { // some code else if (hundreds > 9) { hundreds - 5; } 当我编译这段代码时,我在二进制减号运算符处得到一条警告消息,说“expression result unused”。引发此警告消息的原因是什么 我的猜测是,减去一个常量整数不是一个好的做法,相反,我应该定义一个const int类型的变量,其值为5,并将其从数百中去

我有一个函数,它有一个整数作为形式参数:

string function1(int hundreds)
{
// some code
else if (hundreds > 9)
{ 
    hundreds - 5;
}
当我编译这段代码时,我在二进制减号运算符处得到一条警告消息,说“expression result unused”。引发此警告消息的原因是什么

我的猜测是,减去一个常量整数不是一个好的做法,相反,我应该定义一个
const int
类型的变量,其值为
5
,并将其从
数百
中去掉。i、 e而不是
数百-5
我应该使用:

const int DEDUCTION = 5;
//code up to the following statement
hundreds - DEDUCTION;

因为百分之五不起任何作用。这就像写
如果(百分之九){1;}

你要么把结果分配给另一个变量,要么把它重新分配为
百分之五。否则,结果将被简单地删除。

因为没有使用算术减法的结果,您将得到相应的警告。
您关于用常量int替换数字5的假设是不正确的,因为这并不能消除警告的原因。

您会得到“表达式结果未使用”,因为没有使用百分之五的结果。你想干什么?百分之一百=百分之五;(或相当于百分之五;)
百分之五这没有任何作用-此语句没有副作用。你是说
数百-=5?@IgorTandetnik这正是我的意思:)对不起,这是漫长的一天。我应该删除这个问题。“二进制运算符”是指接受两个参数的运算符;这是二进制减号,参数是
数百
5