konstruktor kopiujacy
Ostatnio zmodyfikowano 2009-05-20 18:53
gorgh Temat założony przez niniejszego użytkownika |
konstruktor kopiujacy » 2009-05-20 17:29:27 1.Mam maly problem z konstruktorem kopiujacym.Ponizszy program dziala dobrze dopiero gdy usunie sie z niego rzeczony konstruktor.Glownym "uzytkownikiem" domyslnego KK jest "funkcja", ktora pobiera i zwraca objekt przez wartosc, czemu wiec domyslny konstruktor sie w tym wypatku sprawdza, a zdefiniowany juz nie? gorgh #include <iostream> using namespace std;
class prosta { int r; public: prosta( int a ) : r( a ) { } prosta( prosta & a ) { r = a.r; } int pobierz() { return r; }; } prosta1( 11 ), prosta2( 1 );
prosta funkcja( prosta rzecz ) { return rzecz; };
const prosta & funkcja2( const prosta & object ) { return object; }; int main() { funkcja2( funkcja( prosta1 ) ); return 0; }
:: Pietrzuch :: http://forum.ddt.pl/?Tid=622 |
|
DejaVu |
» 2009-05-20 18:53:10 Nie za bardzo zrozumiałem o co chodzi... w każdym razie konstruktor kopiujący powinien wyglądać tak: prosta::prosta( const prosta & a ) : r( a.r ) { }
|
|
« 1 » |