Для одного из моих проектов я действительно хотел сделать это (упростить его до минимума);
struct Move
{
int src;
int dst;
};
struct MoveTree
{
Move move;
std::vector<MoveTree> variation;
};
Я должен признать, что предполагал, что это невозможно сделать напрямую, я думал, что вектор MoveTree внутри MoveTree будет верботен. Но я все равно попробовал, и это прекрасно работает. Я использую Microsoft Visual Studio 2010 Express.
Это портативный? Это хорошая практика? Мне есть о чем беспокоиться?
Редактировать: я задал второй вопрос в надежде найти хороший способ сделать это.