在构建包含重复函数定义的静态库时,MSVC ++ 2013只给出了一个警告:
LNK4006 "... already defined in ... second definition ignored"?
我担心警告很容易错过。如果找到相同函数的多个定义(在不同的.cpp文件中),是否可以使MSVC ++ 2013报告错误并使构建失败?
请注意,解决方案suggested here的反向(即项目设置>链接器>取消选中'强制文件输出')不适用,因为这是针对可执行文件的,但在此问题中,静态库处于焦点因此没有“链接器”项目选项。
答案 0 :(得分:1)
似乎没有办法将特定警告视为错误。但是,您可以将每个链接器警告视为错误:
转到:Project Properties -> Linker -> General -> Treat Linker Warnings As Errors
并将其切换为Yes (/WX)
。