Maison  >  Article  >  développement back-end  >  Explication détaillée des références locales et des retours en C# 7.0

Explication détaillée des références locales et des retours en C# 7.0

黄舟
黄舟original
2017-03-16 11:13:461652parcourir

Cet article présente principalement les ref locales et les retoursde C# 7.0, c'est-à-dire les variables locales et les référence retours, avec Il a une certaine valeur de référence. Les amis intéressés peuvent s'y référer

Si vous n'avez pas lu le texte original, veuillez vous déplacer ici : [Bonnes choses à venir] Nouvelles fonctionnalités C#7.0 (disponibles dans VS2017)

C'est absurde Sans plus attendre, allons droit au but. Tout d'abord, nous savons que le mot-clé ref change le transfert de valeur en transfert de référence, alors jetons d'abord un coup d'œil aux ref locals (ref local variable)

Le sous-code est le suivant :


static void Main(string[] args)
  {

   int x = 3;
   ref int x1 = ref x; //注意这里,我们通过ref关键字 把x赋给了x1
   x1 = 2;
   Console.WriteLine($"改变后的变量 {nameof(x)} 值为: {x}");
   Console.ReadLine();

  }

Ce code finit par afficher "2"

Veuillez faire attention à la partie commentaire , nous attribuons x à x1 via le mot-clé ref, S'il s'agit d'un transfert de type valeur, cela n'aura aucun effet sur Passer l'espace nécessaire pour s'ouvrir.

Regardons ensuite

ref return (ref reference return)

Cette fonction est en fait très utile. Nous pouvons mettre le type de valeur Return comme type de référence.

Anciennes règles, donnons un exemple, le code est le suivant :

Logique très simple.. Récupère la valeur de l'indice spécifié du

tableau


Nous écrivons le code de test comme suit :

static ref int GetByIndex(int[] arr, int ix) => ref arr[ix]; //获取指定数组的指定下标


Nous renvoyons le type de référence via ref, et lors de la réaffectation, le tableau arr La valeur a également changé en conséquence.

   int[] arr = { 1, 2, 3, 4, 5 };
   ref int x = ref GetByIndex(arr, 2); //调用刚才的方法
   x = 99;
   Console.WriteLine($"数组arr[2]的值为: {arr[2]}");
   Console.ReadLine();
Pour résumer : le mot-clé ref existe depuis longtemps, mais il ne peut être utilisé que pour des paramètres. Cette fois, C#7.0 permet non seulement de le passer en paramètres, mais également en tant que variables locales et de retour. valeurs. D'accord

D'accord, c'est tout.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn