同时链接EasyXw.lib和EasyXa.lib,不使用drawtext或outtextxy时可以正常编译。
但是使用这两个函数时会报链接错误,部分报错如下
cl.exe /Zi /EHsc /nologo kernel32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib User32.lib EasyXw.lib EasyXa.lib /FoF:\MSVC\game\chapter3\build\char /FdF:\MSVC\game\chapter3\build\char /FeF:\MSVC\game\chapter3\build\char.exe F:\MSVC\game\chapter3\char.cpp
char.cpp
EasyXa.lib(EasyX.obj) : error LNK2005: "public: __cdecl FILLSTYLE::FILLSTYLE(class FILLSTYLE const &)" (??0FILLSTYLE@@QEAA@AEBV0@@Z) 已经在 EasyXw.lib(EasyX.obj) 中定义
EasyXa.lib(EasyX.obj) : error LNK2005: "public: __cdecl FILLSTYLE::FILLSTYLE(void)" (??0FILLSTYLE@@QEAA@XZ) 已经在 EasyXw.lib(EasyX.obj) 中定义
EasyXa.lib(EasyX.obj) : error LNK2005: "public: __cdecl LINESTYLE::LINESTYLE(class LINESTYLE const &)" (??0LINESTYLE@@QEAA@AEBV0@@Z) 已经在 EasyXw.lib(EasyX.obj) 中定义
EasyXa.lib(EasyX.obj) : error LNK2005: "public: __cdecl LINESTYLE::LINESTYLE(void)" (??0LINESTYLE@@QEAA@XZ) 已经在 EasyXw.lib(EasyX.obj) 中定义
EasyXa.lib(EasyX.obj) : error LNK2005: "public: virtual __cdecl FILLSTYLE::~FILLSTYLE(void)" (??1FILLSTYLE@@UEAA@XZ) 已经在 EasyXw.lib(EasyX.obj) 中定义
EasyXa.lib(EasyX.obj) : error LNK2005: "public: virtual __cdecl LINESTYLE::~LINESTYLE(void)" (??1LINESTYLE@@UEAA@XZ) 已经在 EasyXw.lib(EasyX.obj) 中定义
EasyXa.lib(EasyX.obj) : error LNK2005: "public: class FILLSTYLE & __cdecl FILLSTYLE::operator=(class FILLSTYLE const &)" (??4FILLSTYLE@@QEAAAEAV0@AEBV0@@Z) 已经在 EasyXw.lib(EasyX.obj) 中定义
但是只链接EasyXa.lib时就没有报错,可以正常编译。我的task.json如下
{
"tasks": [
{
"type": "shell",
"label": "C/C++: cl.exe 生成活动文件",
"command": "cl.exe",
"args": [
"/Zi",
"/EHsc",
"/nologo",
"kernel32.lib",
"gdi32.lib",
"winspool.lib",
"comdlg32.lib",
"advapi32.lib",
"shell32.lib",
"ole32.lib",
"oleaut32.lib",
"uuid.lib",
"odbc32.lib",
"odbccp32.lib",
"User32.lib",
// "EasyXw.lib",
"EasyXa.lib",
"/Fo${fileDirname}\\build\\${fileBasenameNoExtension}",
"/Fd${fileDirname}\\build\\${fileBasenameNoExtension}",
"/Fe${fileDirname}\\build\\${fileBasenameNoExtension}.exe",
"${file}"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$msCompile"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "调试器生成的任务。"
}
],
"version": "2.0.0"
}