gpt4 book ai didi

c++ - 什么会导致在一台计算机上而不是另一台计算机上出现不明确的符号错误?

转载 作者:行者123 更新时间:2023-11-30 04:28:31 24 4
gpt4 key购买 nike

我正在使用 Visual Studio 2010 处理 C++ 代码。该项目及其所有内容已由其他人编写,并复制到共享驱动器上。当创建者在他的计算机上构建它时,它运行良好。当我尝试构建解决方案时,我遇到了一大堆这样的错误

error C2872: '<lambda0>' : ambiguous symbol could be 
'[File].cpp(66) : anonymous-namespace'::<lambda0>' or
'[Different file].h(549) : `anonymous-namespace'::<lambda0>'.

这是一个被认为是错误的行的例子:

std::pair<int, std::pair<int, Point>> b) -> bool { return (a.second.second < b.second.second ); });

似乎错误总是出现在以'});'结尾的行中。完整的代码相当庞大,无法在此处显示,并且它可以在其他计算机上运行,​​因此大概是我的设置或其他问题。有人能猜猜它们可能是什么吗?

最佳答案

不确定您是否看到过这个,但根据该编译器错误的 MSDN 页面:

如果头文件包含 using 指令 ​​(C++),并且后续的头文件是 #include,并且包含也在 using 指令中指定的命名空间中的类型,则可能会发生 C2872。仅在使用#include 指定所有头文件后才指定 using 指令。

MSDN Page

关于c++ - 什么会导致在一台计算机上而不是另一台计算机上出现不明确的符号错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10079230/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com