1

我设置了一个简单的程序来重现错误:

// main.cpp
#include "header.h"

int main()
{
    return 0;
}

现在函数的头文件:

// header.h
#ifndef __HEADER_INCLUDED
#define __HEADER_INCLUDED
float const funct();
#endif

以及该函数的 cpp 文件:

// header.cpp
#include "header.h"

float const funct()
{
    return 1.0f;
}

编译这个,我得到这个错误:

Release\header.obj :警告 LNK4042:对象指定了多次;额外被忽略

我是否遗漏了一些明显的东西,或者这只是另一个 VS 错误/特殊性?

4

1 回答 1

-1

添加

#pragma 一次

在每个文件的顶部。这告诉链接器忽略额外的包含并摆脱警告。

于 2017-11-21T22:15:14.350 回答