[Solved] C++: No matching function to call to const char


You declared the constructor of player as Player(string name, int points);.

If you define a function with two parameters you have to use both.

Create your object with

Player player1 = Player("Matti", 0);

If you still want to call it with just one parameter you have to set a default value like this.

class Player
{
public:
    ...
    Player(string name, int points = 0); // replace 0 with whatever you want to be default.
    ...
}

Then you can use both variants. The one above and the one you attempted

Player player1 = Player("Matti");

Of course the function header of your definition has to match the one in the declaration:

Player::Player(string name, int points):
    _name(name), _points(points){
}

It’s important not to write the default value inside dhe definition because this will most likely produce an compiler error.

3

solved C++: No matching function to call to const char