Błąd przy kopiowaniu konstruktora domyślnego

0

Czy konstruktor domyślny kopiuje się jakoś inaczej?
http://pastebin.com/CBGVNMn2
W Visual Studio 2008 wyświetla błąd:

error C2664: 'macierz::macierz(const macierz &)' : cannot convert parameter 1 from 'macierz (__cdecl *)(void)' to 'const macierz &'
1>        Reason: cannot convert from 'overloaded-function' to 'const macierz'
1>        No constructor could take the source type, or constructor overload resolution was ambiguous
1

Obiekt macierz stwórz tak:

macierz a;

zamiast

macierz a();
0

Ok niby działa, ale czy nie powinno dwa razy wypisać wartość na ekran?
Pierwszy raz przy użyciu konstruktora domyślnego, a drugi przy jego kopii?
Czy źle myślę?

1

Kopie robi konstruktor kopiujący, a nie masz takiego, więc kompilator tworzy taki - automagicznie.

0

Ok, problem rozwiązany. :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1