Maison >développement back-end >C++ >Comment C # gère-t-il le passage des objets: pas-par valeur ou pass-by-référence?
Lors du passage de l'objet image à la méthode, les modifications apportées dans cette méthode ne seront pas reflétées dans l'objet d'origine une fois la méthode renvoyée. Cela s'écarte de la sémantique de citation attendue.
La vérité de la valeur transmise
L'opposé de la cognition générale, l'objet lui-même n'est pas directement passé. Au lieu de cela, leurs valeurs seront évaluées et adoptées comme paramètres initiaux de la méthode. Pour le type de référence, cette valeur est une référence à l'objet existant. La modification de l'objet sera visible pour l'appelant.
Cependant, le paramètre fait référence à un autre objet, qui ne sera pas reflété dans la méthode d'appel. En effet, tous les paramètres sont transmis par défaut.passant
Pour obtenir un comportement de transmission de référence réel, les mots clés REF ou OUT doivent être utilisés. Ces mots clés garantissent la valeur des paramètres et la position de stockage et le partage des paramètres. Par conséquent, la modification des paramètres sera observée par la méthode d'appel. En bref, bien que l'objet de type de référence ait été initialement transmis sur la valeur, leurs références peuvent être modifiées et les modifications apportées par l'objet de référence seront visibles à l'appel. Cependant, l'affectation du nouvel objet est attribuée au paramètre n'étendra pas la méthode de rappel. Pour obtenir un comportement de transmission de référence réel, REF ou OUT doit être explicitement utilisé.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!