#include <iostream>
using namespace std;
class A
{
public:
A(){i = 0; cerr << " A(0) ";}
A(int b){i = b;cerr << " A(" << i << ") ";}
~A(){cerr << " ~A(" << i << ")\n";}
A (const A& b){i = b.i;cerr << "copy(" << i << ") ";}
const A &operator=( const A &r )
{
if( this != &r )
{
i = r.i;
cerr << " =(" << i << ") ";
}
else
{
cerr << " ravni ";
}
return *this;
}
private:
int i;
};
A b(3);
A t(3);
int main()
{
t = b;
return 0;
}
A(3) A(3) =(3) ~A(3)
~A(3)
Почему =(3), а не ravni?
Ответ на:
комментарий
от lb
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум C++ [part2] (2005)
- Форум Logger on C++ ... вроде все правильно ... (2005)
- Форум boost.asio, boost.serialization (2010)
- Форум Валится на throw (2005)
- Форум C++ частичная специализация шаблонов функций есть!!! (2005)
- Форум вопрос по С++ (операторные функции) (2008)
- Форум С++ и заголовочные файлы (2015)
- Форум Почему не компилится эта программа (2007)
- Форум C++ iostream::failbit (2005)
- Форум Как правильно в C++ вызвать нужную функцию? (2004)