我正在尝试使用Microsoft CppUnitTestFramework.我在一个解决方案中有两个独立的项目,一个是实际代码,另一个是单元测试代码.现在我想测试第一个项目中定义的"DijkstarImpl"类,并在项目Properties-> C++ - > General-> AdditionalInclude目录中添加了此类的路径.测试项目编译成功,但是当我运行测试时,我收到此错误:
错误2错误LNK2001:未解析的外部符号"public:static class DijkstarImpl*UnitTest_FasTrack :: UnitTest1 :: dijkstarImpl"(?dijkstarImpl @ UnitTest1 @ UnitTest_FasTrack @@ 2PAVDijkstarImpl @@ A)C:\ working\TestFastTrack\UnitTest_FasTrack\unittest1.obj
错误3错误LNK2001:未解析的外部符号"public:__thiscall DijkstarImpl :: DijkstarImpl(void)"(?? 0DijkstarImpl @@ QAE @ XZ)C:\ working\TestFastTrack\UnitTest_FasTrack\unittest1.obj
错误是链接器错误,但我不知道应该链接什么?它不是要包含在Properties-> Linker-> Input中的lib文件.以下代码段显示了单元测试代码.
#include "stdafx.h"
#include "CppUnitTest.h"
#include "DijkstarImpl.h"
#include "string.h"
using namespace Microsoft::VisualStudio::CppUnitTestFramework;
namespace UnitTest_FasTrack
{
TEST_CLASS(UnitTest1)
{
static DijkstarImpl* dijkstarImpl;
public:
TEST_CLASS_INITIALIZE(Initialize)
{
static DijkstarImpl* UnitTest_FasTrack::UnitTest1::dijkstarImpl;
}
TEST_METHOD(TestMethod1)
{
}
};
}
Run Code Online (Sandbox Code Playgroud) 有没有办法在java中锁定(同步)二维数组中的行?我只想更新一个特定行中的一些条目并仅锁定该行而不是整个数组?