C++ 指针帮助缺少参数列表使用 &帐户::获取余额



我目前正在银行系统上执行任务,我有一个客户有一个帐户数组,我试图输出数组中每个帐户的金额。它说我需要使用一个指针,我想但不确定我会怎么做

double customer:: getAccounts()
{
    for (int i=0;i<5;i++)
    {
        if(Accounts[i].getBalance != 0)
        {
        double x = Accounts[i].getBalance;
        return x;
        }
    }       
}
double customer :: specAccount(int num)
{
    double x = Accounts[num].getBalance;
    return x;
}

错误C3867:"Account::getBalance":函数调用缺少参数列表;使用'&Account::getBalance'创建指向成员的指针

假设getBalance是一个方法:

double x = Accounts[num].getBalance();

或者如果Accounts是指针数组:

double x = Accounts[num]->getBalance();

是否缺少括号?

double x = Accounts[i].getBalance();

getBalance不是一个方法吗?因此应该像一样调用

Accounts[i].getBalance() ;

如果Accounts是一个指针数组,您应该键入

Accounts[i]->getBalance() ;

或至少

(*Account[i]).getBalance() ;
if(Accounts[i].getBalance != 0)

应该是

if(Accounts[i].getBalance() != 0)

尽管这并不是此代码的唯一问题。您对getBalance()的每次调用都执行相同的操作
此外,如果在循环中找不到平衡,会发生什么=0?你应该处理那个案子。

编译器会告诉您问题出在哪里。您缺少参数列表。getBalance是一个函数,函数采用括号中的参数。所以加上括号,如下所示:

Accounts[i].getBalance();

最新更新