是否有可能在C++中將對象的賦值運算符重載爲接受原始類型?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++?
我還要補充,如果我改變賦值操作符可變運算符=(const的牛逼VAL)也失敗 –
bgoldber