Раз уж используете С++ - однозначно выбирайте классы.
почему?
Потому что, например, сделав выбор в пользу классов, вы закрываете доступ к их членам извне класса, а что надо (из членов) - объявляете public.
Ведь, чем больше в вашем классе членов public, тем большая вероятность, что вы наделаете ошибок в своём коде. То есть вы можете обращаться к открытым членам классов откуда угодно, а не с помощью методов данного класса, как это положено
Последнее относится к концепции инкапсуляции в С++.