Вложенные функции отображения, не возвращающие вывод - PullRequest
0 голосов
/ 03 мая 2020

Я пытаюсь создать простую игру bin go, используя связанные списки в C ++. Доска разработана в виде связного списка связанных списков, и поэтому у меня есть два класса, один для общего связанного списка, а другой для его содержимого. Программа компилируется правильно, но не выводит плату в соответствии с моими методами просмотра, как это должно быть. Как мне это исправить?

int main()
{
...
std::cout<<"Generating board"<<std::endl;
ListOfLists board;
board.generate(size); // size is user input in omitted code
board.viewBoard();
}

в файле класса ListsOfLists:

void ListOfLists::viewBoard()
    {
        lNode* iterate; //struct with fields linkList obj and lNode * nx
        iterate = first; //first is head pointer

        while (iterate != nullptr)
            {
            linkList g = iterate->obj;
            g.viewContents();
            iterate = iterate->nx;
            }
        }

и в файле linkList

void linkList::viewContents()
    {
        Node * iterate = first; //Node is struct with fields int value and Node * n
        int count = 0;
        while (iterate != nullptr)
        {
            if (this->contentsCount() % 2 != 0) //contentsCount returns number of items in the list
                {
                    std::cout<<"["<<iterate->value<<"]\t";
                    iterate = iterate->n;
                }
             else //generator classes deliberately make central list one size smaller for free space
                {
                    if(count != this->contentsCount() / 2)
                    {
                    std::cout<<"["<<iterate->value<<"]\t";
                    iterate = iterate->n;
                    count++;
                    }
                    else
                    {
                     std::cout<<"[FREE SPACE]\t";
                     count++;
                    }

                }
        }
    }
...