Zapis do pliku, a funkcja rekurencyjna,

0

Witam, mam problem przy zapisywaniu do pliku np listy. Powiedzmy, że mam funkcje która zwraca wartość elementów listy rekurencyjnie i chciałbym zapisać wszystkie dane do pliku, a nie tylko ostatnią(pierwszą) wartość, czy da się zrobić tak, że zapamiętam wszystkie liczby? Nie mogę używać tablic,wektorów i stringów.

0
void zapis_plik(wezel tablica[], std::string nazwa, int poczatek)
{
    std::ofstream plik;
    plik.open(nazwa, std::ios_base::app);
    for (int i = 0; i < size; ++i)
    {
        if (adjlista[i]->glowa != nullptr && i != poczatek)
        {
            plik << kolejka(tablica, i, poczatek, nazwa)<<"->";
            plik << tablica[i].koszt << std::endl;
        }
    }
}

Powiedzmy, że funkcja kolejka zwraca kolejno wartości, ale w ten sposób dodaje się tylko jedna wartość, a ja potrzebuje wszystkie.
Zrobiłem to potem troche inaczej i przy każdym wywołaniu funkcji otwieram plik, ale wydaje mi się, że jest to mało optymalne i da się to zrobić lepiej.

Ogólnie to mam zaimplementować graf i Algorytm Dijkstry, potrzebuje rekurencji, ponieważ iteracyjnie nie moge się dostawać do poprzednich węzłów i wpisać drogi do pliku w dobrej kolejności, rekurencja pasuje tutaj, tylko jest problem w zapisaniu do pliku.

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0