Re[2]: не совсем по теме
От: Андрей Галюзин Украина  
Дата: 15.01.04 16:47
Оценка: 2 (1)
d> В той же книжке написано, что шаблонный оператор = не перекрывает оператор копирования (т.е.
d> const A& A::operator = (const A&) ):

Так и есть.

d> , и рядом с этим написан код типа:


d>
d> template <typename T>
d>  template <typename T2>
d> Stack<T>& Stack<T>::operator= (Stack<T2> const& op2)
d> {
d>     if ((void*)this == (void*)&op2) {    // assignment to itself?
d>         return *this;
d>     }
d> ...
d>     return *this;
d> }
d>


d> не понятен смысл проверки (void*)this == (void*)&op2


Но ведь можно попросить вызвать именно этот оператор

Stack<int> a1;
Stack<int> a2;
a1.operator=<int>(a2);


Вероятно, для такого случая и стоит проверка.

--
aga
Posted via RSDN NNTP Server 1.7 "Bedlam"
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.