The main point is the factory, as one part of the overall program has done its job - it manufactures Players if you tell it what type of Player you want - and that’s all.
You don’t hve to add anything to it’s functionality, especially platform dependent stuff like asking questions better suited to a menu.
I’m therefore not sure what classes and what members you are asking about :)
OK. I thought as much and this is roughly/quickly how you can do it. The enum causes the 'unseemly' duplication which can be overcome with a translator function to go from numbers to the enumeration but that isn't the main issue.
You should be able to see now how the menu is decoupled from the factory and the same factory (different menu though) can be used whether it is a console (this example) or other (eg GUI) interface runs the game.