找到一个或多个多重定义的符号的有关问题
找到一个或多个多重定义的符号的问题
FileError\CtrlError\TextureError,都再同一个头文件Error.h里面.
但是我已经在Error.h里面加上了
#pragma once
#ifndef Err
#define Err
但是为什么还有这样的错误呢?
------解决方案--------------------
需要提供相关代码才可以判断。
------解决方案--------------------
函数体不应该放置在头文件中.
------解决方案--------------------
函数的定义放到cpp文件中,h文件中只做函数的申明即可。
------解决方案--------------------
放在头文件的全局函数(不是类的函数)只能用一次, 最好把函数体移到cpp文件, 把申明和定义分开.
- C/C++ code
1> LINK : warning LNK4075: 忽略“/INCREMENTAL”(由于“/PROFILE”规范) 1>ui.obj : warning LNK4075: 忽略“/EDITANDCONTINUE”(由于“/OPT:REF”规范) 1>TextureFun.obj : error LNK2005: "void __cdecl FileError(unsigned long)" (?FileError@@YAXK@Z) 已经在 ui.obj 中定义 1>TextureFun.obj : error LNK2005: "void __cdecl CtrlError(unsigned long)" (?CtrlError@@YAXK@Z) 已经在 ui.obj 中定义 1>TextureFun.obj : error LNK2005: "void __cdecl TextureError(unsigned long)" (?TextureError@@YAXK@Z) 已经在 ui.obj 中定义 1>R:\UIsystem\UIsystem\Debug\UIsystem.exe : fatal error LNK1169: 找到一个或多个多重定义的符号
FileError\CtrlError\TextureError,都再同一个头文件Error.h里面.
但是我已经在Error.h里面加上了
#pragma once
#ifndef Err
#define Err
但是为什么还有这样的错误呢?
------解决方案--------------------
需要提供相关代码才可以判断。
------解决方案--------------------
函数体不应该放置在头文件中.
------解决方案--------------------
函数的定义放到cpp文件中,h文件中只做函数的申明即可。
------解决方案--------------------
放在头文件的全局函数(不是类的函数)只能用一次, 最好把函数体移到cpp文件, 把申明和定义分开.