Twój wąż jest reprezentowany przez pojedynczy obiekt TShape. Musisz utworzyć tablicę zawierającą segmenty węża. Najłatwiej będzie użyć do tego szablonu std::vector. Poruszenie ogona polega na cyklicznym przesuwaniu elementów od końca na pozycję poprzedniego elementu.
// PSEUDOKOD
for (int i=ogon.size()-1; i>0; i--) {
ogon[i].pozycja = ogon[i-1].pozycja;
}
ogon[0].pozycja = glowa.pozycja