我遇到了这个错误(错误C3867:非标准语法;使用'&'创建指向成员的指针) 一些时间。我知道这个问题已经问了很多次,但我不明白为什么会出现问题,我可以做些什么来解决问题。我已经阅读了很多关于指针如何工作的指南,并且我尝试了解新知识,但是我不知道如何正确执行。C++ Visual Studio“非标准语法;使用'&'创建指向成员的指针”
对于这个问题,我做了一个简单的代码。有人可以帮助我理解为什么会发生此错误,以及如何解决此代码?
错误:错误C3867:'BankAccount :: amountOfMoney':非标准语法;使用 '&' 创建一个指针构件
Source.cpp
#include <iostream>
#include <string>
#include "BankAccount.h"
using namespace std;
int main(){
BankAccount bankAccount1("testName", 200.0);
cout << bankAccount1.amountOfMoney << endl;
}
BankAccount.h
#pragma once
#include <string>
using namespace std;
class BankAccount
{
public:
BankAccount();
BankAccount(string name, double money);
~BankAccount();
double amountOfMoney();
private:
string name;
double money;
};
BankAccount.cpp
#include "BankAccount.h"
BankAccount::BankAccount()
{
}
BankAccount::BankAccount(string n, double m) {
name = n;
}
BankAccount::~BankAccount()
{
}
double BankAccount::amountOfMoney() {
return money;
}
您需要查看如何调用方法 – user463035818
'amountOfMoney'是一个函数,所以您必须使用'()'来调用它。否则,编译器认为你需要函数的*地址*。 'cout << bankAccount1.amountOfMoney()<< endl;' –