`
ah_fu
  • 浏览: 223213 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

小记:C++操作符重载后的调用格式

阅读更多
    看到这个标题的时候不要骂我:重载操作符了以后,就像使用操作符一样,就能够调用重载的操作符了。
    是滴,没错,但是这里要记一些其他的调用方法:
#include <stdio.h>

class My
...{
public:
    
int operator[](int index)
    
...{
        
return index;
    }


    
void Print()
    
...{
        
//对象的成员函数内使用this指针来调用操作符,注意优先级原因,this要加上括号
        printf("%d ", (*this)[1]);  

        
//象函数调用一样调用操作符,加上operator关键字即可
        printf("%d "this->operator[](2));
    }

}
;

int main()
...{
    My obj;
    obj.Print();
    printf(
"%d ", obj.operator[](3));  //象调用成员函数一样调用操作符
    printf("%d ", obj[4]);  //一般的操作符调用方法
    return 1;
}

 
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics