Le symbole @ avant un nom de variable en C#

Muhammad Zeeshan 12 octobre 2023
  1. Qu’est-ce qu’un symbole @ en C#
  2. la signification du symbole @ en C#
  3. Exemples d’utilisation du symbole @ en C#
Le symbole @ avant un nom de variable en C#

Cet article explique le symbole @ devant un nom de variable en C# signifie.

Qu’est-ce qu’un symbole @ en C#

Pour certains développeurs C#, le signe @ peut être quelque peu troublant. Peu de programmeurs programment depuis longtemps mais ont encore des idées fausses sur ce que fait @.

Lors de l’interaction avec d’autres langages de programmation, la notation @ permet d’utiliser des mots-clés comme identifiants. Étant donné que le caractère @ ne fait pas vraiment partie de l’identifiant, il peut être interprété comme un identifiant normal dans d’autres langues.

Un identifiant verbatim est un identifiant avec un terme @. Le terme @ peut être utilisé pour des identificateurs autres que des mots-clés, mais il est fortement déconseillé par le style.

la signification du symbole @ en C#

Vous pouvez utiliser les mots réservés en utilisant le signe @. Considérez le scénario suivant.

int @class = 29;

Et celui ci-dessous ne fonctionnera pas pour l’utilisation du mot réservé.

int class
= 29;

Si vous souhaitez insérer une barre oblique inverse dans une chaîne, vous devez d’abord l’échapper en insérant une autre barre oblique inverse devant celle-ci. Le code suivant stocke la chaîne "C:\\Program Files\\wmplayer.exe" dans la variable de chaîne filepath.

string filepath = "C:\\Program Files\\wmplayer.exe";

Cela peut être frustrant si vous devez taper beaucoup de chaînes avec des barres obliques inverses. Pour rendre les choses un peu plus simples, vous pouvez utiliser le symbole @ devant une chaîne pour produire un littéral de chaîne textuel qui ignore les barres obliques inverses comme caractères d’échappement.

Vous ne pourrez pas insérer de caractères spéciaux comme des retours à la ligne ou des tabulations dans la chaîne si vous faites cela. Le code suivant est identique au code précédent, sauf qu’il utilise un littéral de chaîne à la place.

string filepath = @"C:\Program Files\wmplayer.exe";

Cela ne s’applique qu’à votre code, pas à tout ce que l’utilisateur tape dans un TextBox ou un ComboBox. Sans échappement et sans signification particulière liée au caractère, toutes les saisies de l’utilisateur font partie de la propriété Text du contrôle.

Étant donné que l’utilisateur ne peut pas saisir de caractères spéciaux, vous n’avez pas à vous soucier du traitement différent des caractères d’échappement, quelle que soit la saisie de l’utilisateur. En d’autres termes, l’utilisateur ne peut pas taper \t pour saisir un caractère de tabulation.

Exemples d’utilisation du symbole @ en C#

  1. Cela implique vraiment qu’il vous permet d’utiliser des termes réservés.

    char @int = 'z';
    

    Et en dessous un ne fonctionnera pas.

    char int = 'z';
    
  1. Nous examinons également un autre scénario ; le signe @ est également utilisé lors de la définition de chaînes avec des caractères d’échappement.

    string str = @"C:\Users\Shani\Downloads\Book1.xlsx";
    

    Le code ci-dessous est une alternative à ce qui précède.

    string str = "C:\\Users\\Shani\\Downloads\\Book1.xlsx";
    
  2. Le code suivant affiche de nombreux littéraux de chaîne et d’autres problèmes de chaîne au démarrage du programme.

    private void AtsymbolForm_Load(object sender, EventArgs e) {
      txtdblSlash.Text = "C:\\Users\\Shani\\Downloads\\Book1.xlsx";
      Console.WriteLine(txtdblSlash.Text);
      Console.WriteLine(@txtdblSlash.Text);
    }
    

    Ici, l’ajout d’un @ n’affecte pas le contenu de la TextBox.

Muhammad Zeeshan avatar Muhammad Zeeshan avatar

I have been working as a Flutter app developer for a year now. Firebase and SQLite have been crucial in the development of my android apps. I have experience with C#, Windows Form Based C#, C, Java, PHP on WampServer, and HTML/CSS on MYSQL, and I have authored articles on their theory and issue solving. I'm a senior in an undergraduate program for a bachelor's degree in Information Technology.

LinkedIn

Article connexe - Csharp Variable