当前位置: 首页 > 编程语言 > C#

OR(-)、XOR(^)、AND(&)重载共享

时间:2023-04-10 13:16:03 C#

OR(|)、XOR(^)、AND(&)重载如何重载&、|在C#中,^和^运算符以及重载如何工作?我一直试图找到一些好的答案,但没有找到任何答案。我会分享任何有用的文章。通过在C#中为您的类实现运算符,您实际上并没有重载运算符。您只是第一次实施它们。它们是方法,就像任何其他方法一样,但具有特殊的语法。您可以调用c=a+b,而不是调用c=Add(a,b),其中+是返回值的运算符(方法)。&=|=和^=方法通过实现以下方法自动实现。publicclassMyClass{publicstaticMyClassoperator&(MyClassleft,MyClassright){returnnewMyClass();}publicstaticMyClassoperator|(MyClassleft,MyClassright){returnnewMyClass();}publicstaticMyClassoperator^(MyClassleft,MyClassright){returnnewMyClass();}}vara=newMyClass();varb=newMyClass();变量c=a&b;变种d=一个|b;vare=a^b;一个&=b;//a=a&b;c|=d;//c=c&d;e^=e;//e=e^e;重载是在编译时执行的。它确保根据方法的名称和参数类型和计数调用特定方法。覆盖是在运行时执行的。它允许调用子类的方法而不是父类的方法,即使实例被认为是父类。有关运算符重载的一些文章/教程/参考资料,包括二进制/按位运算符和示例源代码,请参阅:至于“如何使用它们”,基本规则是重载运算符应该在您实现它们的领域中有意义...例如,您可以构建遗传/进化算法并以与算法的“重组/变异”步骤(即从当前种群创建下一代)一致的方式定义一些/所有按位/二元运算符-这将使在的上下文中使用相当优雅的代码。如何使用?小心。他们需要说得通。例如,定义一个Type来保存ComplexNumber或Matrix,然后重载算术运算符是有意义的。不要因为不喜欢打字就小看运算符重载这行愚蠢的代码。例如,MyThingyList+SomeFileName从文件加载MyThingyList。或MyThingyList–调用MyThingsList.Clear()。以上就是C#学习教程的全部内容:OR(|)、XOR(^)、AND(&)重载分享。如果对你有用,需要了解更多C#学习教程,希望大家多多关注——本文来自网络收藏,不代表立场,如涉及侵权,请右击联系管理员删除。如需转载请注明出处: