Why not include Name as a property of Country?
Code:
class Country
{
public string Name { get; private set; }
public Country(string name)
{
Name = name;
}
public override string ToString()
{
return Name;
}
}
And then you instantiate it like this:
Code:
Country germany = new Country("Germany");
Now your players can each have their own list of countries:
Code:
class Player
{
private List<Country> _countries = new List<Country>();
public List<Country> Countries { get { return _countries; } }
}
Now you're looking at some pretty usable classes:
Code:
Player player1 = new Player();
Country germany = new Country("Germany");
player1.Countries.Add(germany);
foreach(Country country in player1.Countries)
Console.WriteLine(country);