我正在查看Wrapper类的.h文件。该类包含一个私有(private)成员:

T* dataPtr;

(其中T与.h文件顶部定义的template < class T >相同)

该类提供了两个“*重载运算符”方法:
T& operator*()
{
   return *dataPtr;
}

const T& operator*() const
{
  return *dataPtr;
}

两者都简单地返回*dataPtr,但是以纯英语显示的“*dataPtr”符号实际上返回了什么?以及它如何与返回类型“T&”配合?

最佳答案

返回类型T&表示您正在返回T对象实例的引用。 dataPtr是一个指针,您可以使用*“取消引用”(获取指针的引用值/实例)。

关于c++ - 关于C++的问题&运算符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/845957/

10-10 11:48