Я пытаюсь связать мой файл реализации .cpp с моим заголовочным файлом - я получаю это сообщение об ошибке из моего терминала Mac -
rowlandev:playground rowlandev$ g++ main.cpp -o main
Undefined symbols for architecture x86_64:
"Person::Person()", referenced from:
_main in main-32e73b.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Вот код в моем файле cpp:
#include <iostream>
#include "playground.h"
using namespace std;
Person::Person() {
cout << "this is running from the implementation file" << endl;
}
вот код с моей основной функцией:
#include <iostream>
#include "playground.h"
using namespace std;
int main() {
Person chase;
}
и вот код в моем заголовочном файле:
#include <string>
using namespace std;
#ifndef playground_h
#define playground_h
class Person {
public:
Person();
private:
string name;
int age;
};
#endif /* playground_h */
что я должен сделать, чтобы исправить эту ошибку? Не стесняйтесь добавлять любые другие вещи, которые я могу сделать, чтобы улучшить код, который я только что написал. Открыто для всего.