C++中操作符operator的两种用法
来源:互联网 发布:电信网络运营商电话 编辑:程序博客网 时间:2024/06/08 11:14
1.operator overloading
C++可能通过operator 重载操作符,格式如下:类型T operator 操作符 (),如比重载+,如下所示
template<typename T> class A
{
public:
const T operator + (const T& rhs)
{
return this->m_ + rhs;
}
private:
T m_;
};
又比如STL中的函数对象,重载(),如下所示
template<typename T> struct A
{
T operator()(const T& lhs, const T& rhs){ return lhs-rhs;}
};
2 operator casting
C++可能通过operator 重载隐式转换,格式如下: operator 类型T (),如下所示
class A
{
public:
operator B* () { return this->b_;}
operator const B* () {return this->b_;}
operator B& () {return *this->b_;}
private:
B* b_;
};
A a;
当if(a),编译时,其中它转换成if(a.operator B*()),其实也就是判断 if(a.b_)
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wirror800/archive/2009/03/28/4031795.aspx
- C++中操作符operator的两种用法
- C++中操作符operator的两种用法
- C++中操作符operator的两种用法
- c ++的operator的两种用法
- c ++的operator的两种用法
- c++ 中 operator的两种用法
- c++ 中 operator的两种用法
- C++中operator的两种用法
- operator的两种主要用法
- C++中的operator的两种用法
- C++ operator两种用法
- C++ operator两种用法
- C++ operator两种用法
- C++操作符operator的另一种用法
- C++学习 operator两种用法详解
- [C/C++]_[操作符重载operator type()和operator()的区别]
- operator* operator-> 操作符的使用
- 游标中做更新操作的两种用法
- delphi2010 "名,伍,上"等字不显示的修改
- C++中操作符operator的两种用法
- 一个简单的Web Service
- struts2 执行报错
- r
- C++中操作符operator的两种用法
- 你应该收藏的 Android Websites:
- linux系统中 drcom客户端完美解决-以后不再编译!
- Android学习笔记(三四):再谈Intent(上)-一些知识
- css中height:100%不起作用的解决方法
- android 音乐播放器-------歌词同步 lrc
- MFC 获得当前应用程序目录
- sql 执行时间
- s//w]+)>//U$1/g