称为“ double”的对象类型不是report()函数的函数或函数指针

我正在尝试创建一个程序,该程序将在用户输入商品的批发和加价百分比时计算零售价。我确定除第15行外,所有内容都是正确的,其中“ double report = report(retailPrice)”中出现错误called object type 'double' is not a function or function pointer for a report() function

我尝试将几乎所有报告变量甚至函数重命名为不同的名称,但是仍然会导致完全相同的错误。当完全省略report()函数并将其仅替换为main()中的cout语句时,这似乎很好用,但是不幸的是,无论它有多毫无意义,赋值都需要它。

#include <iostream>
#include <iomanip>
using namespace std;

double getWholeSale();
double getMarkup();
double calculateRetail(double,double);
double report();

int main()
{
    double wholeSale = getWholeSale();
    double markup = getMarkup();
    double retailPrice = calculateRetail(markup,wholeSale);
    double report = report(retailPrice);
    cout << report;

    return 0;
}
//**************************
double getWholeSale()
{
    double wholeSale;
    cout << "Enter the item's wholesale: ";
    cin >> wholeSale;
    while (wholeSale < 0)
    {
        cout << "Wholesale must be a positive number: ";
        cin >> wholeSale;
    }
    return wholeSale;
}
//**************************
double getMarkup()
{
    double markup;
    cout << "Enter the item's markup percentage: ";
    cin >> markup;
    while (markup < 0)
    {
        cout << "Markup percentage must be a positive number: ";
        cin >> markup;
    }
    return markup;
}
//*************************
double calculateRetail(double markup,double wholeSale)
{
    double retailPrice;
    double markupPercentage = markup / 100;
    retailPrice = (wholeSale * markupPercentage) + wholeSale;
    return retailPrice;
}
//*************************
double report(double retailPrice)
{
    cout << "The retail price is: $" << fixed << showpoint << setprecision(2) << retailPrice;
}
guopu8483 回答:称为“ double”的对象类型不是report()函数的函数或函数指针

您像这样呼叫report

double report = report(retailPrice);

您可以像这样实现report

double report(double retailPrice)

但是您像这样声明report

double report();

其中一个与其他不一样;)修正您的声明以包含一个double参数。

本文链接:https://www.f2er.com/3134639.html

大家都在问