为什么在洛谷上运行就会报错
题目地址:https://www.luogu.com.cn/problem/P5728我的代码:#include<iostream>
#include<cmath>
using namespace std;
struct student{ //定义一个学生结构体
int ch, ma, en;
int al;
};
bool is_same(student a, student b) //判断是否是"旗鼓相当的对手"
{
if(abs(a.ch-b.ch) > 5) return false;
if(abs(a.ma-b.ma) > 5) return false;
if(abs(a.en-b.en) > 5) return false;
if(abs(a.al-b.al) >10) return false;
return true;
}
int main()
{
int n; cin>>n;
student x;
for(int i=0; i<n; ++i) //输入数据
{
int t1, t2, t3;
cin>>t1>>t2>>t3;
x.ch = t1; x.ma = t2; x.en = t3;
x.al = t1+t2+t3;
}
int count = 0;
for(int i=0; i<n; ++i) //判断有多少组"旗鼓相当的对手"
for(int j=0; j<i; ++j)
if(is_same(x, x)) count++;
cout<<count;
return 0;
}
在本地运行没有任何问题,但是提交上去就会显示编译错误,请问是怎么回事 报错信息很明显了,引用有歧义, is_same 这个符号在同一命名空间里出现重名了:标准上自 C++11 开始,标准库中已经定义了 std::is_same 这一符号。
所以需要尝试更改函数名,只从 std 命名空间引入使用的符号,或者指明调用的 is_same 的命名空间归属。
至于为什么本地能正常编译,可能和您在本地具体使用的编译器有关。 我也打洛谷 , 要不互关一下?{:10_277:} 柿子饼同学 发表于 2022-7-31 13:09
我也打洛谷 , 要不互关一下?
蛤?洛谷还有关注功能
页:
[1]