Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 18920|Antwoord: 0

[Bron] Ondiepe replicatie van c#-objecten kloonen

[Link kopiëren]
Geplaatst op 01-07-2016 10:52:47 | | | |


Clone is verdeeld in oppervlakkige en diepe kopieën

Het verschil tussen de twee: Wanneer er een referentietype lid is, kopieert de ondiepe kopie de referentie van het lid, en de diepe kopie kopieert het lidobject.

Hoe de kopieerfunctie van objecten te implementeren:

== Het overnemen van de interface ICloneable implementeert de Clone-methode

== ICloneable.Clone zelf maakt geen onderscheid tussen Deep of Shallow, je kunt MemberwiseClone aanroepen in Clone om een ShallowClone te implementeren, of je kunt zelf een DeepClone implementeren. Volgens de aanbeveling van Microsoft is het echter bij de implementatie van ICloneable klaar om een DeepClone te implementeren.
== ICloneable. Clone geeft het type object terug
== Het replicatieprincipe van MemberwiseClone is dat het waardetype bitgewijs wordt gekopieerd, en het referentietype kopieert de referentie van het object. Een ding om hier op te merken is het String-type, hoewel het een referentietype is, maar hier is het hetzelfde als het waardetype en wordt het als een waardetype behandeld in Clone.









Vorig:Een ander object met dezelfde identificatiewaarde was al gekoppeld aan...
Volgend:mvc haalt de JSON XML-gegevens op voor de post
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com