C ++函数的多重定义

时间:2016-05-10 06:58:52

标签: c++

我正在为arduino编写库以与特定硬件进行通信。我有4个文件(main.cpp DCB.cpp,DCB.h,ubus_cmd.h)。在DCB.cpp中我包含头文件(#include "DCB.h"),在DCB.h中我定义它(#ifndef DCB_H #define DCB_H)。在主文件(main.cpp)中,我包含了库(#include "DCB.h")。但我仍然在DCB.cpp文件的构造函数中得到多个定义的错误。错误是说("这里的第一个定义"," DCB的多重定义:: DCB()")

1 个答案:

答案 0 :(得分:1)

嗯,标题说明了一切。您不允许两次定义单个函数,除非它inline。显然,你的构造函数有两个定义。

关于标题包含的内容确实有助于防止意外的双重定义,但它们还不够。