我的函数没有返回值
My function isn't returning a value
我的程序应该计算商品的价格(如果客户购买 10 件或更多商品,他们将获得商品正常价格的折扣(。除了int Product::fulfillOrder(int orderq)
功能外,一切都运行良好。它说必须返回一个值,但orderq
应该返回一个值供函数使用(我相信我做对了(。下面是问题函数的代码:
int Product::fulfillOrder(int orderq)
{
if (orderq < 0)
{
cout << "Error" << endl;
orderq = 0;
cout << "Shipped: " << orderq << endl;
}
else if (orderq <= Quantity)
{
orderq = Quantity;
Quantity -= orderq;
cout << "Shipped: " << orderq << endl;
}
else
{
orderq = Quantity;
orderq = 0;
cout << "Shipped: " << orderq << endl;
}
}
我认为您需要添加
退货单q;
在函数的末尾。
return 语句丢失。如果你想返回一个int,你必须返回你需要的东西。 我可以在您的代码中看到的是,无论条件是什么,您都将输入参数设置为 0。 您必须仅检查输入是否大于 0,因为如果顺序小于 0,则没有意义。不可能的事情。 这意味着为什么要检查订单是否低于零?没有意义,检查它是否更大才能进入微积分。
当输入为 -1 时,前两个"if"语句为真。您也在做以下操作:
orderq = Quantity
Quantity = orderq
如果要交换值,则需要第三个辅助变量,但要分析代码和需要执行的操作。您需要先在纸上解决问题。然后编码它。
祝你好运!
相关文章:
- 从python中调用C++函数并获取返回值
- 编译器警告:执行到达值返回函数的末尾而不返回值
- 将返回值存储在函数指针数组的指针中是如何工作的?
- 程序不向函数返回值
- 如何在另一个函数中使用返回值作为参数?
- 编写以 C++ 为单位返回值的函数
- 了解在返回值之前和之后使用 EAX 的函数调用
- 当我使用 void 函数的返回值(通过强制转换函数指针)时,究竟会发生什么?
- 如何在不使用临时变量的情况下取消引用返回指针的函数的返回值?
- 如何将不可移动和不可复制的函数返回值获取到数组中
- G++ 编译器是否在未使用返回值的情况下将 constexpr 函数视为常规函数?
- 为什么当你将函数的返回值乘以零时它不会短路?
- 函数的返回值类型是别名 ***或 *** 布尔值
- 如何在没有返回值的情况下使用(特征)unaryExpr 和 lambda 函数?
- 创建 std::函数,它返回具有函数成员值的变量.分段错误
- 为什么这个"ctypes"包装函数的返回值是"c_long(0)"而不是&quo
- 函数不显示返回值 - C++
- 结构新手,我对如何从 void 函数中返回值并将其放入另一个函数感到困惑
- 将 void 函数更改为返回值函数
- 返回值函数中结构成员赋值的额外拷贝