我在文件 1.h 之一中定义了一个常量:
namespace x {
const int var = 0xff;
}
该文件作为库的一部分捆绑在一起,例如 1.a。
现在我将这个 1.h 包含在 2.cpp 中
#include "1.h"
void func() {
struct t;
t.param_1 = x::var;
}
当我将其构建为可执行文件时,我得到以下声明常量的多重定义错误:
“./../../../include/c++/4.1.2/exception:57: x::var 的多重定义”