我为我的模板类重载了dereference运算符:
templateclass Node { public: T *pointer; T operator*() { return *pointer; } };
我希望能够写入main中的指针:
Noden; *n = 33;
但我得到这个错误:
lvalue required as left operand of assignment
我应该如何重载此运算符才能写入指针?
只需将其T&
作为返回类型.然后你有一个左值.现在的问题是你要返回指向的对象的副本.