![](/img/trans.png)
[英]Compiling projects in different configurations in a multi-projects Visual Studio Solution
[英]Visual Studio solution with different projects with functions of the identical name
我有一个VS10解决方案,其中包含2个具有相同名称功能的项目。 链接器抱怨(引发警告)第二个定义(相同名称的两个函数)被忽略:
warning LNK4006: "void __cdecl function_name(short *,class Bbox *,int,int,struct FILE_NAMES *,unsigned char *)" (?function_name@@YAXPAFPAVBbox@@HHPAUFILE_NAMES@@PAE@Z) already defined in XXX.lib(segment.obj); second definition ignored
这导致对第二个项目(被忽略的项目)的函数的调用指向第一个项目的功能(因为定义被忽略)。
我的问题是:除了重命名两个项目中所有具有相同名称的功能之外,还有什么方法可以避免/解决此问题? 例如,通过将#if / pragma添加到我的头文件中,或通过操作.obj文件。 现实情况是,该解决方案在任何编译中仅需要两个项目之一,因此有条件编译的一种简单方法就很好了,但是我的首选是将两个项目一起编译。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.