C++ operator两种用法
来源:互联网 发布:胡须生长液 知乎 编辑:程序博客网 时间:2024/05/19 08:38
本文来自 百度文库
C++中的operator,有两种用法,一种是operator overloading(操作符重载),一种是operator casting(操作隐式转换)。下面分别进行介绍:
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_)
- 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的两种用法
- operator的俩种用法
- c++ operator的两种应用
- operator 用法
- 【android基础】android sqllite操作
- 【θntldr is missing怎么解决θntldr丢失的解决办法θ】
- ios 用程序绘制饼图的demo
- strcpy和memcpy的区别
- php gd2
- C++ operator两种用法
- myeclipse管理部署tomcat项目时如何在tomcat中加入数据源配置
- cocos2dx 自学知识点之三 自定义动画 使用plist来实现
- 设计模式六大原则(5):迪米特法则
- 转:有理想的程序员必须知道的15件事
- ubuntu logout 命令
- QTableWidget控件总结
- HBase 调优
- 把一个List拆分为几个大小一样的List