main.cpp中
#include <iostream>
#include "Burrito.h"
using namespace std;
int main(){
Burrito b;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
Burrito.h
#ifndef BURRITO_H
#define BURRITO_H
class Burrito{
public:
Burrito();
};
#endif
Run Code Online (Sandbox Code Playgroud)
Burrito.cpp
#include "Burrito.h"
#include <iostream>
Burrito::Burrito(){
}
Run Code Online (Sandbox Code Playgroud)
编译和链接:
lzsb$ g++ main.cpp -o main
Undefined symbols for architecture x86_64:
"Burrito::Burrito()", referenced from:
_main in ccVpCr0z.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
lzsb$
Run Code Online (Sandbox Code Playgroud)
平台:
Mac OS 10.6.8
G++ : i686-apple-darwin10 --with-gxx-include-dir=/usr/include/c++/4.2.1
Run Code Online (Sandbox Code Playgroud)
您还需要编译该Burrito.cpp
文件.编译器从每个.cpp文件创建目标文件,然后将它们链接起来.这是您的调用失败的地方,因为链接器无法Burrito
在任何目标文件中找到引用的类.要修复编译器调用,只需添加即可Burrito.cpp
g++ main.cpp Burrito.cpp -o main
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
300 次 |
最近记录: |