我正在使用Xcode学习C ++但是当我尝试初始化头文件中的类时,我总是遇到链接器错误。这是main.cpp:
#include <iostream>
#include <fstream>
#include "main.h"
using namespace std;
int main() {
Rectangle rect(4, 5);
cout << rect.area() << endl;
return 0;
}
和main.h
...
#ifndef main_h
#define main_h
using namespace std;
class Rectangle {
int width,height;
public:
Rectangle(int,int);
int area() {return width*height;}
};
Rectangle::Rectangle (int x, int y) { width=x; height=y; }
#endif /* main_h */
..和链接器错误
clang: error: linker command failed with exit code 1 (use -v to see invocation)
我知道Xcode正在读取main.h因为我曾经得到一个“找不到文件”的错误(以及其他一些错误)但我修复了所有这些并且不再得到那些错误。根据我的理解,Xcode由于某种原因无法从这两个文件构建机器代码,因为如果我只是将所有代码复制/粘贴到一个文件中,它就可以工作。