Czy zapis
this.pictureBox1.Image = img;
przypisuje pictureboxowi tylko referencję do obrazka czy go kopiuje?
Bo jest też zapis
this.pictureBox1.Image = img.Clone();
Czy zapis
this.pictureBox1.Image = img;
przypisuje pictureboxowi tylko referencję do obrazka czy go kopiuje?
Bo jest też zapis
this.pictureBox1.Image = img.Clone();
Ale jaką kopię: http://en.wikipedia.org/wiki/Object_copy
Z moich doświadczeń z C#, mogę powiedzieć, że 1. zapis jest to przypisanie referencji do obiektu, bo wszystko domyślnie jest referencją. Jak chcesz przekazać kopię to musisz zaimplementować interfejs ICloneable
lub skorzystać z gotowego w przypadku nieswoich klas.
A nie ma gdzieś przypadkiem konstruktora kopiującego?
w C# nie ma. i całe szczęście.
bo wszystko domyślnie jest referencją
nie wszystko.
Chodziło mi o coś takiego: http://msdn.microsoft.com/en-us/library/ts25csc8.aspx - w zasadzie jest to konstruktor kopiujący, tak samo jak w C++ dostaje się referencję do starego obiektu i inicjalizuje się nowy.
Co za burak dał mi minusa?