编译一个小型静态库项目时,我收到了这些警告。
几次出现:
警告LNK4006:“public:static int const 的std :: numeric_limits :: min_exponent10" (?min_exponent10 @?$ numeric_limits @ M @ std @@ 2HB)已定义于 xxx.obj;忽略第二个定义
警告LNK4006:“public:static bool const std :: _ Num_int_base :: is_bounded“(?is_bounded @ _Num_int_base @ std @@ 2_NB) 已经在xxx.obj中定义;忽略第二个定义
警告LNK4006:“public:static int const std :: _ Num_int_base :: radix” (?radix @ _Num_int_base @std @@ 2HB)已在xxx.obj中定义;第二 定义被忽略
和其他类似的人。所有这些都是LNK4006。
也许这是典型的一些常见错误?我在C ++和VS方面不是很有经验。我不确定哪些信息会有所帮助,但我认为重要的是我正在定义命名空间,并且我将一些变量声明为“const std :: vector”并在标头中初始化,以用作“全局变量”
任何帮助表示赞赏。 感谢。
修改
我无法创建一个MWE,这会导致显示相同的警告,我决定创建一个新的VS解决方案,从旧的VS中导入文件。在这个过程中,警告消失了。不管怎样,谢谢。