C++智能指针
各位好:
T& operator*() { assert(m_pI != NULL) ; return *m_pI ;}
T** operator&() { assert(m_pI == NULL) ; return &m_pI ;}
T* operator->() { assert(m_pI != NULL) ; return m_pI ;}
我知道这3句话是模板的操作符重载,
那为什么第一句话的T后面跟了一个&号呢?
第二句话的T后面跟了两个*号呢?
第三局话的T后面跟了一个*号呢?
和后面的成员指针变量有关系,或者说指针的操作符重载就是这种固定的格式?
有哪个高手能帮忙解答么?谢谢。分不多,尽量给。