c++重载 operator ->

重载 -> 运算符
示例如下

  • 不能是静态函数
  • 返回 T的指针,再调用T->
<type T>
class Pointer
{
	Pointer(const T* t) : _target(t)
	T * operator ->() 
	{
	    return _target
	}
	T* _target;
};

This is the only really tricky one. It must be a nonstatic member function, and it takes no arguments. The return value is used to perform the member lookup.
If the return value is another object of class type, not a pointer, then the subsequent member lookup is also handled by an operator-> function. This is called the “drill-down behavior.” The language chains together the operator-> calls until the last one returns a pointer.

ref

  • https://stackoverflow.com/questions/8777845/overloading-member-access-operators
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值