A
C++ wiki book指的是
… In C++0x,such an assignment operator is known as a unifying
assignment operator because it eliminates the need to write two
different assignment operators …
对于赋值运算符,它按值获取类的类型:
String & operator = (String s) // the pass-by-value parameter serves as a temporary { s.swap (*this); // Non-throwing swap return *this; }
我试过谷歌搜索这个词,但它似乎并没有得到广泛使用.
它从何而来?
解决方法
它似乎是参考
unification在正式类型系统中发生的.我们的想法是,如果只通过某些合法的替换将r值和l值引入相同的类型(统一),那么赋值就是格式良好的.
维基百科声称这个想法在John Alan Robinson年首先得到了有意义的关注(可能还有它的名字).