Expression : invalid operator <

原创 2015年11月18日 19:03:34
今天用sort来对vector进行排序,然后排序函数如下:
	static bool comp(const Interval a, const Interval b)
	{
		return a.start > b.start ? 1 : (a.start < b.start ? -1 : 0);
	}

结果一直提示错误。

后来查了下,大概是出这个错是因为VS2005,VS2008后的sort()里,用的是所谓的“ strict weak ordering”,也就是说,如果a==b,则返回的应该是false,如果返回的是true,则会出上面的错。

修改成下面形式就OK了。

	static bool comp(const Interval a, const Interval b)
	{
		return a.start > b.start ? 1 : 0;
	}


版权声明:本文为博主原创文章,未经博主允许不得转载。

[C++] Expression : invalid operator < 解决方法

VS2008的sort()函数的用法貌似挺郁闷的。。。 前些时候写了个sort的compare函数,错误"Expression : invalid operator ...
  • zhouworld16
  • zhouworld16
  • 2011年03月03日 12:23
  • 6446

Expression : invalid operator < 解决方法

从技术上说,用于排序关联容器的比较函数必须在它们所比较的对象上定义一个“严格的弱序化(strict weak ordering)”。(传给sort等算法的比较函数也有同样的限制),就是两个对象比大小或...
  • pbymw8iwm
  • pbymw8iwm
  • 2015年07月20日 10:03
  • 1226

Expression:invalid operator<断言

#include #include using namespace std; /* ** 测试目的:重现断言,"include\xtree Line:1746 Expression...
  • wusoule
  • wusoule
  • 2014年02月17日 12:28
  • 1358

错误expression: invalid operator<

今天写了一段数组从大到小倒排序的代码,大意像这样: bool compare( int a, int b ) {     return a >= b; } std::sort( intArray.be...
  • thinktalk
  • thinktalk
  • 2016年03月31日 17:53
  • 327

Expression:invalid operator <

用sort函数时,对应的compare函数,在用于比较的两个参数相等时,返回值应为false...
  • u012943043
  • u012943043
  • 2016年11月30日 11:29
  • 141

c++中sort函数调用报错Expression : invalid operator <的内部原理

c++中sort函数调用报错Expression : invalid operator
  • huoyaotl123
  • huoyaotl123
  • 2014年11月27日 14:48
  • 556

Flume-ng 1.4 运行抛出“line 81: syntax error in conditional expression: unexpected token `('”

运行flume-ng 命令时,抛出异常: line 81: syntax error in conditional expression: unexpected token `('      解决方法...
  • GreatElite
  • GreatElite
  • 2014年04月08日 14:04
  • 2095

[C++] Expression : invalid operator < 解决方法

转自http://blog.csdn.net/zhouworld16/article/details/6220331 确实如下文所说。 VS2008的sort()函数的用法貌似挺郁闷的。。。 ...
  • h_h_w
  • h_h_w
  • 2013年09月04日 17:01
  • 540

【Debug Assertion Failed!Expression:_pFirstBlock == pHead vs2013编程错误】

今天在用vs2013编程的时候,我遇到: Debug Assertion Failed!Expression:_pFirstBlock == pHead  vs2013 解决办法一:        ...
  • u013634684
  • u013634684
  • 2016年03月29日 15:59
  • 1765

invalid operator< 异常处理

Code:#include using std::list;class myClass {public: int a; int b;};static bool Compare(cons...
  • yyingwei
  • yyingwei
  • 2009年08月25日 10:12
  • 3240
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Expression : invalid operator <
举报原因:
原因补充:

(最多只允许输入30个字)