在模板类中,我发现了表达式,*this = NULL
这样的表达式是什么意思?
其定义如下:
TYPE** getPtr()
{
*this = NULL;
return &m_pPtr;
}
其中 m_pPtr 是模板类中的 TYPE*
类型。
赋值运算符:
// Assignment operator.
TYPE* operator =(TYPE *pPtr) {
if (pPtr == m_pPtr)
return pPtr;
m_pPtr = pPtr;
return m_pPtr;
}
毗湿奴。
最佳答案
在没有看到实际代码的情况下,很难说出这样一个语句的意义所在。
但它可能会调用重载的赋值运算符。例如:
#include <iostream>
class X {
public:
void operator=(void *) {
std::cout << "Here!\n";
}
void foo() {
*this = NULL;
}
};
int main() {
X x;
x.foo();
}
关于c++ - *this = NULL 在模板类的方法中意味着什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8796575/