Я пытаюсь сделать свою самую первую игру с нуля, ti c -ta c -toe. Все еще в части искусства ascii. Итак, я создал один файл заголовка с именем functions и три файла cpp, один с функцией отображения, другой с функцией tictactoe, которая пока отображает только функцию отображения, а третий является основным, который вызывает функцию tictactoe, которая должна отобразить функцию отображения. Проблема в том, что tictactoe cpp думает, что вызываемая функция отображения объявляется и инициализируется там, поэтому вместо этого ничего не делает, поэтому ничего не выводится на экран. Как я могу заставить его найти определение?
ti c -ta c -toe functions.h:
#pragma once
#include <iostream>
using namespace std;
void tictactoegame();
void display(string one = "", string two = "", string three = "", string four = "", string five = "", string six = "", string seven = "", string eight = "", string nine = "");
ti c -ta c - функции схождения. cpp
#include <iostream>
#include <vector>
using namespace std;
void display(string one, string two, string three, string four, string five, string six, string seven, string eight, string nine)
{
vector<string> symbols2 = { " \n", " 1 | ", "2 | ", "3 \n", " _____|_____|______\n", " | | \n", " 4 | ", "5 | ", "6 \n", " 7 | ", "8 | ", "9 \n" };
cout << symbols2[0] << symbols2[1] << symbols2[2] << symbols2[3];
cout << symbols2[4] << symbols2[5] << symbols2[6] << symbols2[7] << symbols2[8];
cout << symbols2[4] << symbols2[5] << symbols2[9] << symbols2[10] << symbols2[11] << symbols2[0];
//OR, same as below
// display's 9 elements is equivelent to the 9 console outputs below:
//cout << " \n"; //1, 0
//cout << " 1 | 2 | 3 \n"; //2, 1,2,3
//cout << " _____|_____|______\n"; //3, 4
//cout << " | | \n"; //4, 5
//cout << " 4 | 5 | 6 \n"; //5, 6,7,8
//cout << " _____|_____|______\n"; //6, 4
//cout << " | | \n"; //7, 5
//cout << " 7 | 8 | 9 \n"; //8, 9,10,11
//cout << " \n"; //9, 0
}
ti c -ta c -toe logi c. cpp
#include "tic-tac-toe functions.h"
void tictactoegame()
{
void display();
}
main. cpp
#include <iostream>
#include "tic-tac-toe functions.h"
int main()
{
tictactoegame();
system("pause");
}
Дополнительный вопрос: нужна ли мне строка «#pragma once» для заголовка, который был автоматически создан в визуальном Strud ios?