简体   繁体   中英

Cannot Assign to 'Money' Because It Is a 'Method Group'

I'm doing a project for class, and I have to call the Money function from my Player class. However, I do not know how to change Money into something else that is not a Method Group . I don't know much programming, so my range of solutions is rather small. Also, the instructor said I cannot make any changes to the Main class, only to the Player class.

Here's the code for the Main class:

 p1.Money += 400;

And here's the 'Money' function from my Player class:

public int Money ()
    {
        return money;
    }

Money() is a method. You can't set it - it only returns something (an int ) (or nothing if void ).

You need to change it to a property that can also be set:

public int Money {get; set;}

or, more elaborative:

private int _money;
public int Money { get { return _money; } set {_money = value;} }

It should be

money += 400;

or change the Method to a property,

public int Money {get;set;}

Depending on the context of where you are trying to do the increment (in class or in a class that uses the Money property (field)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM