您好我有一个Expression.GreaterThanOrEqual(左,右),所以我想用以下数据评估字符串或域类型:
002-1400
所以当我使用GreaterThanOrEqual运算符“> =”时,我可以说002-1400 "is greater or equal than" 002-1400, 002-1399, 002-1398 ...
所以我可以使用一些网格行来通过输入参数进行比较。
希望可以理解,
谢谢,
答案 0 :(得分:3)
您无法在String类上定义运算符。但是,您可以创建自己的类型,并以您选择的任何方式定义相等关系。
答案 1 :(得分:1)
你会覆盖这样的东西:
public static operator >=(Foo foo1, Foo foo2)
{
//code here...
}
public static operator ==(Foo foo1, Foo foo2)
{
return foo1.Equals(foo2);
}
//etc... don't forget to implement Equals and GetHashCode!
请参阅this question了解实现创意的哈希码。
编辑:Ed Swangren是对的,你不能覆盖内置类的运算符。但是,您可以在自己的课程上覆盖它!
答案 2 :(得分:0)
查找运算符重载。 例如,请参阅MSDN: Operator Overloading Tutorial。
答案 3 :(得分:0)
您可以使用operator overloading。请参阅此链接以获取教程。