J'ai créé un erreur (erreur C3867: syntaxe non standard, utilisez '&' pour créer un pointeur vers le membre) deux-trois fois. Je sais que cette question a été posée à plusieurs reprises, mais je ne comprends pas pourquoi le problème se produit et ce que je peux faire pour y remédier. J'ai lu beaucoup de guides comment les pointeurs fonctionnent et j'ai essayé de jouer avec les nouvelles connaissances, mais je ne sais pas comment le faire correctement.C++ Visual Studio "Syntaxe non standard; utilisez '&' pour créer un pointeur sur le membre"
Pour cette question, j'ai fait un code simple. Quelqu'un peut-il m'aider à comprendre pourquoi cette erreur se produit et comment réparer ce code?
Erreur: erreur C3867: 'BankAccount :: amountOfMoney': syntaxe non standard; utiliser '&' pour créer un pointeur vers un membre
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;
}
vous devez revoir comment appeler une méthode – user463035818
'amountOfMoney' est une fonction, vous devez donc utiliser'() 'pour l'appeler. Sinon, le compilateur pense que vous voulez l'adresse * de la fonction. 'cout << bankAccount1.amountOfMoney() << endl;' –