c++ - Visual Studio 2012 中的编译错误

标签 c++ compilation

过去几个小时我一直在尝试解决一个我无法摆脱的错误。这是要点:https://gist.github.com/pluralism/11294490

我没有想法,因为一切对我来说都是正确的。我得到的编译错误如下:

1>MenuCAL.obj : error LNK2005: "void __cdecl printSquareArray(int * *,unsigned int)" (?printSquareArray@@YAXPAPAHI@Z) already defined in calproject.obj 1>C:\Users\Andre Pinheiro\Desktop\calproject\Debug\calproject.exe : fatal error LNK1169: one or more multiply defined symbols found

如果您需要其他文件,请随时询问。提前致谢!

最佳答案

如果您想在 header 中定义 printSquareArray,请将其标记为inline 以允许在包含 header 的每个翻译单元中进行定义。

或者,将定义移动到源文件中,这样它只定义一次。

关于c++ - Visual Studio 2012 中的编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23297943/

相关文章:

javascript - 如果在函数内调用函数,functionS 会被调用吗?编译级别发生了什么?

c++ - 尝试编译 libdwarf,给出未定义的错误

c++ - 如何防止非专业模板实例化?

c++ - SQL Server 2008,数值库,c++,LAPACK,内存问题

c++ - SOIL 未解析的外部符号

c++ - 取消引用 SDL_Surfaces?

c++ - 为什么要重新分配 vector 拷贝而不是 move 元素?

c++ cout如何打印char*

python - 编译后的独立 Cython 可执行文件是否仍包含所有原始源代码?

c# - 在项目中编译resx文件或者直接使用resgen而不编译resx