私はこの問題が常に答えられることを知っていますが、私の特定の例の解決策を見つけることができませんでした。完全なエラーは次のとおりです。
g++ main.cpp
Undefined symbols for architecture x86_64:
"Board::display()", referenced from:
_main in cc7hPZpy.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
Boardクラスからこの表示関数をプルしようとしています。主なものは次のとおりです。
#include "Board.h"
#include <iostream>
#include <string>
using namespace std;
int main()
{
cout << "Some Asian Game" << endl;
Board base;
base.display();
//this is creating the error
//commenting it out compiles, but obviously does not do what i want.
return 0;
}
およびBoard.h:
#ifndef Board_H
#define Board_H
#include "Row.h"
#include <vector>
using namespace std;
class Board
{
public:
vector<Row> rows;
Board()
{
vector<Row> (15);
}
void play(int row, int col, char clr);
bool checkWin(int row, int col, char clr);
char getCellColor(int row, int col);
void display();
void empty();
};
#endif
およびboard.cppからの問題の特定の関数
void Board::display()
{
for(int i=0;i<16;i++)
{
for(int i2=0;i2<16;i2++)
{
cout << rows[i].cells[i2].getState();
}
}
}
私はこのサイトを頻繁に参照して回答を求めてきましたが、個人的に使用したことは一度もないので、回答するのは我慢してください。私はかなり前向きですが、これは私が見落としている単純なものです。