运算符重载和优先级
在C#中,您可以重载运算符,例如+
和*
。 在他们的数学解释中,这些算子具有明确的优先顺序。
重载时是否保留此顺序,是否以某种确定性方式更改,或者您是否也可以重载优先顺序?
如果重载运算符,它将始终优先于默认实现。 但是,您无法更改运算符本身的优先级,因此它将保留为默认值。 有关MSDN的更多信息。
相关报价:
用户定义的运算符实现始终优先于预定义的运算符实现:仅当不存在适用的用户定义的运算符实现时,才会考虑预定义的运算符实现。
和
用户定义的运算符声明不能修改运算符的语法,优先级或关联性。 例如,/运算符始终是二元运算符,始终具有第7.2.1节中指定的优先级,并且始终是左关联的。
重载不会改变优先级。
运算符优先级由编译器设置,并且不能更改,至少在没有自定义编译器的情况下也是如此。
上述就是C#学习教程:运算符重载和优先级分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1002772.html