返回信息流建小顶堆代码:
priority_queue<int, vector<int>, greater<int>> Q;
最后那个地方连在一起有两个>>,在vs下面运行正常,在九度oj上报错:
error: ‘>>’ should be ‘> >’ within a nested template argument list
九度oj编译器的说明:
使用 GNU GCC/G++ 作为C/C++编译器,C++: g++ Main.cc -o Main -02 -Wall -lm --static -DONLINE_JUDGE
gcc (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
glibc 2.3.6
我在中间加一个空格在九度上就通过了
priority_queue<int, vector<int>, greater<int> > Q;
这是一条镜像帖。来源:北邮人论坛 / cpp / #90279同步于 2016/2/13
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
>>中间不加空格会被编译器误解吗?
chenxiansf
2016/2/13镜像同步5 回复
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
这样啊,那我就加空格了事,不管了
【 在 nuanyangyang 的大作中提到: 】
: 老版本的C++有这个歧义。启动C++11标准试试看?当然,如果是别人编译你的代码,你就管不了了,只能认了,靠加空格来避免这个歧义吧。