您的位置:首页 > 编程语言 > C#

读书笔记_C#技术内幕_第九章(重载类成员和操作符)

2008-08-21 14:37 381 查看
overload是程序在同一个类中定义同一名称的多个成员的能力。在这个被重载的成员之间的唯一差别是它们具有不同的参数类型、不同的参数数量或者两者皆不同。

overloading与overriding的区别:
overriding中,运行时刻派生类成员能够代替同一名称的基类成员实现功能。它是程序中实现多态性的一种方法。
overloading对类的用户提供灵活性,使他们能够以方便和直观的方式调用方法。

重载操作符:
可以被重载的一元操作符:
+ - ! ~ ++ -- true false
前缀(++)和后缀(--)不能被单独地重载

可以被重载的二元操作符:
+ - * / % & | ^ << >> == != > < >= <=
不能被重载的操作符:
. f() [] = && || ?: new sizeof typeof as is checked unchecked ->
条件逻辑操作符不能够被重载,但是能够使用“&”和“|”进行计算。“&”和“|”可以重载。

复合操作符不能被显式地重载。然而,当二元操作符重载时,就假定它的对应的复合操作符具有同样的重载行为。如,当二元操作符“+”重载时,“+=”也重载。

“==”和“!=”,“>”和“<”,“>=”和“<=”必须同时被重载。

重载操作符时在操作符前加operator。如 operator+
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: