我一直在尝试设置CPPUnitTest来测试C ++项目。我遇到了一个错误,我有两个旋转错误,这取决于我如何解决我的问题。
我在Visual Studio的解决方案中有两个项目。一个用于测试,一个用于项目本身。我试图在测试项目中引用该项目时遇到这些错误。
如果我这样做,每次尝试构造对象或调用函数时,都会收到LNK2019(未解析的外部符号)错误:
#pragma once
#ifndef REFERENCE_H
#define REFERENCE_H
#include "../Stuff/Thing.h"
#include "../Stuff/OtherThing.h"
#endif
但是,如果我这样做,我会得到一个LNK2005(test2.obj:blahblahlblah已在test1.obj中定义)错误,因为有两个测试引用它:
#pragma once
#ifndef REFERENCE_H
#define REFERENCE_H
#include "../Stuff/Thing.cpp"
#include "../Stuff/OtherThing.cpp"
#endif
删除其中一个测试修复了后者(.cpp)的问题,但显然这不是很好。
我想我可能错过了一路上的某个步骤,但我不确定它是什么。我确实将“项目”项目添加为测试的依赖项。
有没有人能解决这个问题?