Myślę, że to niemożliwe, ale równie dobrze mogę zapytać. Czy mogę zadeklarować prywatny Copy-Constructor i nadal używać domyślnej implementacji?Czy mogę utworzyć konstruktor kopiowania jako prywatny i nadal używać domyślnej implementacji
Tło: Mam klasę z bardzo dużymi wektorami i nie chcę wywoływać konstruktora kopii z wyjątkiem jednej funkcji składowej. Korzystanie ze standardowego publicznego narzędzia do kopiowania może powodować problemy z błędami, np. zapomnienie odniesienia w iteracji (foreach(Type el,vectOfBigObjects
) zamiast foreach(Type const& el,vectOfBigObjects)
). Dlatego chcę zachować standardową kopię konsruktora, ale po prostu uczynić ją prywatną.
Czy jest to możliwe bez przepisywania definicji makulatury?