Я использую кодовый блок, и мой компилятор настроен на [-std=c++0x]
.Я создал простой проект со следующим кодом:
main.cpp
#include <iostream>
#include "Cat.h"
using namespace std;
int main() {
Cat action;
action.meow();
action.jump();
return 0;
}
Cat.h
#ifndef CAT_H_INCLUDED
#define CAT_H_INCLUDED
class Cat {
public:
void meow();
void jump();
};
#endif // CAT_H_INCLUDED
CatProcess.cpp
#include <iostream>
#include "Cat.h"
using namespace std;
void Cat::meow() {
cout << "meow" << endl;
}
void Cat::jump() {
cout <<"jump" << endl;
}
Сообщения об ошибках:
Когда я собираю и запускаю весь проект, эта ошибка появляется на главной.cpp строка 8 в моей IDE:
неопределенная ссылка на 'Cat :: meow ()'
Когда я собираю и запускаю CatProcess.cpp
, эта ошибка появляется:
ошибка: не удается найти цель для файла
Журнал сборки:
mingw32-g ++. Exe -Wall -fexceptions -g -std = c ++ 0x -c C: \ Users \ Im_so \ Documents \ CodeBlock_Projects \ ClassesForCats \ main.cpp -o obj \ Debug \ main.o
obj \ Debug \ main.o: В функции 'main': C: /Users/Im_so/Documents/CodeBlock_Projects/ClassesForCats/main.cpp: 8: неопределенная ссылка на 'Cat :: meow ()'
C: / Users /Im_so / Documents / CodeBlock_Projects / ClassesForCats / main.cpp: 9: неопределенная ссылка на 'Cat :: jump ()'
collect2.exe: ошибка: ld вернул 1 состояние выхода