一些例外情况

来源:互联网 发布:奖金池 知乎 编辑:程序博客网 时间:2024/05/08 10:39

重载操作符的操作数必须是类类型的对象

最左边的操作数成为隐*此参数。所有其他操作数功能参数

大多数操作符可以重载,无论哪种方式,但是有一些例外情况

如果左边的操作数不是类类型的成员,如当重载操作符+(intyourclass或运算符<<ostream&yourclass操作者必须重载时是一个朋友

分配=下标[]成员选择->运营商必须重载成员函数

重载一元-)算子

负算子是一元运算符,可以使用任一方法实现。在我们告诉你如何重载运算符使用一个成员函数这是一个提醒我们如何使用友元函数的重载

234567891011121314151617class Cents{private:    int m_nCents; public:    Cents(int nCents) { m_nCents = nCents; }     // Overload -cCents    Cents operator-();}; // note: this function is a member function!Cents Cents::operator-(){

在几乎所有的好处,也有一些潜在的不利的例外以及。本文并不完整只是想指出一些重大问题时应该考虑使用异常决定是否使用它们)

清理资源

其中一个最大的问题,新的程序员遇到时使用的例外是清理资源时发生异常问题。考虑下面的例子


0 0