假函数框架 "one or more multiply defined symbold found"
Fake Function Framework "one or more multiply defined symbold found"
我正在使用 Fake Function Framework 在 .c 文件中伪造一个函数并在我的 .cpp 单元测试文件中测试它。
#include "..\fff.h"
extern "C"
{
#include "ioDigitalInput.h"
}
DEFINE_FFF_GLOBALS;
FAKE_VALUE_FUNC(bool, ioFunc);
using namespace Microsoft::VisualStudio::CppUnitTestFramework;
namespace UnitTestfff
{
TEST_CLASS(UnitTestfff)
{
public:
TEST_METHOD(TestMethod1)
{
}
};
}
函数 ioFunc returns 一个 bool 并以 void 作为输入。
当我尝试构建代码时出现以下错误:
“找到一个或多个多重定义的符号”和
“ioFunc 已在 ioDigitalInput.obj”中定义
我做错了什么?
行
FAKE_VALUE_FUNC(bool, ioFunc);
在您的 .cpp 单元测试文件中 定义了(假)函数 ioFunc
。目标文件 ioDigitalInput.obj 还包含一个(可能不是伪造的)ioFunc
的定义,你尝试用编译测试 link 这个对象,所以 ioFunc
是 多重定义的 。要么不要尝试 link ioDigitalInput.obj,或者用 fff README.
中描述的弱属性标记假货
我正在使用 Fake Function Framework 在 .c 文件中伪造一个函数并在我的 .cpp 单元测试文件中测试它。
#include "..\fff.h"
extern "C"
{
#include "ioDigitalInput.h"
}
DEFINE_FFF_GLOBALS;
FAKE_VALUE_FUNC(bool, ioFunc);
using namespace Microsoft::VisualStudio::CppUnitTestFramework;
namespace UnitTestfff
{
TEST_CLASS(UnitTestfff)
{
public:
TEST_METHOD(TestMethod1)
{
}
};
}
函数 ioFunc returns 一个 bool 并以 void 作为输入。
当我尝试构建代码时出现以下错误: “找到一个或多个多重定义的符号”和 “ioFunc 已在 ioDigitalInput.obj”中定义
我做错了什么?
行
FAKE_VALUE_FUNC(bool, ioFunc);
在您的 .cpp 单元测试文件中 定义了(假)函数 ioFunc
。目标文件 ioDigitalInput.obj 还包含一个(可能不是伪造的)ioFunc
的定义,你尝试用编译测试 link 这个对象,所以 ioFunc
是 多重定义的 。要么不要尝试 link ioDigitalInput.obj,或者用 fff README.