c ++在linux中编译并运行

Sar*_*ara -1 c++ linux pointers g++

可能重复:
未定义的引用

在我的目录中,我有:

main.cpp
tree.cpp
tree.h
Run Code Online (Sandbox Code Playgroud)

我在main.cpp中包含了tree.h

#include "tree.h"
Run Code Online (Sandbox Code Playgroud)

然后在我写的主要功能中

tree* t=new tree()
Run Code Online (Sandbox Code Playgroud)

为了编译我会做

g++ main.cpp
Run Code Online (Sandbox Code Playgroud)

但我有错误

undefined reference to `tree::tree()'
Run Code Online (Sandbox Code Playgroud)

有什么问题?

bil*_*llz 7

您还需要编译和链接Tree源代码:

$ g++ -c -o tree.o tree.cpp
$ g++ -o test main.cpp tree.o
Run Code Online (Sandbox Code Playgroud)

运行你的申请:

$ ./test
Run Code Online (Sandbox Code Playgroud)

  • 你需要一本好的gcc手册http://pages.cs.wisc.edu/~beechung/ref/gcc-intro.html (3认同)