【发布时间】:2011-08-06 04:41:24
【问题描述】:
我有一个名为“SimpleFunctions.h”的文件,定义如下:
#ifndef SIMPLEFUNCTIONS_H
#define SIMPLEFUNCTIONS_H
namespace my_namespace {
double round(double r) { return (r > 0.0) ? floor(r + 0.5) : ceil(r - 0.5); }
float round(float r) { return round((double)r); }
}
#endif // SIMPLEFUNCTIONS_H
此文件以前只包含在一个文件中,并且工作正常。
现在我已将它包含在第二个文件中,但它不再有效。在链接时,它告诉我该函数已在“firstfile.obj”中定义。
但是,由于我使用的是包含守卫,我希望这些函数只定义一次,还是我遗漏了什么?
【问题讨论】:
标签: c++ include linker-errors