是否可以在 C++ 中为对象重载赋值运算符以接受原始类型?
例如
template< typename T>
class Variable
{
...
Variable<T>& operator=( const Variable<T>& )
{
mValue = 0;
return &this;
}
}
int l = 3;
Variable<int> intVar();
intVar = l;
如果我尝试这样做,我会收到以下错误
error: non-object type 'Variable<int> ()' is not assignable
我觉得好像我遗漏了一些明显的东西——我虽然用 C++ 可以做到这一点?