【 error LNK2005: "class QSemaphore freeBytes" (?freeBytes@@3VQSemaphore@@A) 已经在 main.obj 中定义】
来源:互联网 发布:下载软件的软件哪个好 编辑:程序博客网 时间:2024/06/05 07:41
这个错误很低级,但是也让我当时百思不得其解
semaphore.h#ifndef SEMAPHORE_H#define SEMAPHORE_H#include <QSemaphore>#include <QThread>const int DataSize = 1000;const int BufferSize = 80;int buffer[BufferSize];QSemaphore freeBytes(BufferSize);QSemaphore usedBytes(0);class Producer : public QThread{public: Producer(); void run();};class Consumer : public QThread{public: Consumer(); void run();};#endif
错误就在这里了,一开始我都不敢相信,这里怎么会出现重定义的报错呢???
错误原因
.h中只能声明,不能定义。。。
0 0
- 【 error LNK2005: "class QSemaphore freeBytes" (?freeBytes@@3VQSemaphore@@A) 已经在 main.obj 中定义】
- error LNK2005: "class Managers manager" (?manager@@3VManagers@@A) 已经在 Managers.obj 中定义(实例化问题出错)
- error LNK2005 已经在***.obj中定义
- error LNK2005 已经在***.obj中定义
- error:LNK2005 已经在*.obj中定义
- error:LNK2005 已经在*.obj中定义
- error:LNK2005 已经在*.obj中定义
- error:LNK2005 已经在*.obj中定义
- error:LNK2005 已经在*.obj中定义
- error:LNK2005 已经在*.obj中定义
- error:LNK2005 已经在*.obj中定义
- error:LNK2005 已经在*.obj中定义
- error LNK2005: 已经在*.obj中定义
- error:LNK2005 已经在*.obj中定义
- error LNK2005 已经在***.obj中定义
- error LNK2005: 已经在*.obj中定义
- error:LNK2005 已经在*.obj中定义
- error LNK2005: 已经在*.obj中定义
- Android - RecycleView 使用 Universal-Image-Loader加载优化
- Android常用开源框架
- Swift自适应布局(Adaptive Layout)教程(一)
- 解决IllegalStateException: Can not perform this action after onSaveInstanceState
- 能编辑pdf文件的软件
- 【 error LNK2005: "class QSemaphore freeBytes" (?freeBytes@@3VQSemaphore@@A) 已经在 main.obj 中定义】
- Android -- Application
- MAC下用Ecplise 真机调试android
- 测试
- 7.2 客户区鼠标消息
- 时间格式
- 小米开源文件管理器MiCodeFileExplorer-源码研究(3)-使用最多的工具类Util
- Virtualbox WDDM之DxgkDdiInterruptRoutine
- 编译和链接