为什么会出现error LNK2005的报错?

图片说明图片说明图片说明图片说明
我看了一下都有#pragma once,而且没有在.h文件中定义全局变量,而且也只是声明了函数,实现是在.cpp文件中,为什么会对我类函数报重复定义啊?

在 main.cpp 把头文件 include“HTree.cpp" 改成include "HTree.h";试试
另外可以看一下类似重定义的错误在分文件写的时候 会经常用到。