C++中操作符operator的两种用法
来源:互联网 发布:软件转omtp ctia 编辑:程序博客网 时间:2024/06/08 15:01
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两种用法详解
- [C/C++]_[操作符重载operator type()和operator()的区别]
- operator* operator-> 操作符的使用
- 游标中做更新操作的两种用法
- 在VB6.0中实现大面积不规则区域的填充
- Linux伙伴算法(Buddy Allocator)
- vc6.0工程文件各种格式简单说明
- 如何连接oracle数据库及故障解决办法-总结
- awy5
- C++中操作符operator的两种用法
- 八名新人杀入十大最牛散户榜 刘元生卫冕
- c++串行化CArchive类的学习小结
- 80后北大才女唱《大龄文艺女青年之歌》走红
- 龙团长,“崇高”吗?
- 跨库事务处理 spring+hibernate+struts2+jta
- Linux 学习笔记
- struts+hibernate+spring事务配置
- SD卡相关资料