Méthodes de Struct
Une structure peut également comporter des méthodes en plus des champs de données. Dans une structure, la création d'une méthode s'effectue de la même manière que pour une méthode classique :
index.cs
123456789struct structureName { // some fields here (optional) public returnType methodName(parameter1, parameter2, ...) { // code } }
Par exemple :
index.cs
12345678910struct Player { public string name; public int score; public void displayScore() { Console.WriteLine($"{name} has {score} score"); } }
Dans la structure Player
, il existe une méthode appelée displayScore
qui affiche un message formaté contenant le name
et le score
. Il est important de noter que les valeurs de name
et score
seront différentes pour chaque objet (instance), ce qui signifie que la méthode displayScore
affichera un résultat différent pour chaque objet.
L'accès et l'exécution de la méthode se font via la syntaxe variableName.methodName()
. Voici comment utiliser la structure Player
:
index.cs
123456789101112131415161718192021222324252627282930using System; struct Player { public string name; public int score; public void displayScore() { Console.WriteLine($"{name} has {score} score"); } } class ConsoleApp { static void Main(string[] args) { Player player1 = new Player(); Player player2 = new Player(); player1.name = "SuperKillerPro"; player1.score = 100; player2.name = "Cyrex"; player2.score = 77; player1.displayScore(); player2.displayScore(); } }
Dans l'exemple, deux objets ont été créés à l'aide de la classe Player
et certaines données leur ont été attribuées. La méthode displayScore
a été appelée pour chaque objet et le résultat s'est avéré différent pour chacun d'eux.
Il est également possible d'avoir des méthodes avec des paramètres. Ajoutons une nouvelle méthode appelée addScore
qui augmente le score d'un montant spécifié et essayons de l'utiliser :
index.cs
12345678910111213141516171819202122232425262728293031using System; struct Player { public string name; public int score; public void displayScore() { Console.WriteLine($"{name} has {score} score"); } public void addScore(int add) { score += add; } } class ConsoleApp { static void Main(string[] args) { Player player1 = new Player(); player1.name = "SuperKillerPro"; player1.score = 100; player1.displayScore(); player1.addScore(70); player1.displayScore(); } }
On peut constater à la sortie que la méthode met à jour le score de 70
points.
1. Quel est un mot-clé valide pour déclarer une méthode ?
2. Quelle sera la sortie du code suivant ?
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Awesome!
Completion rate improved to 2.04
Méthodes de Struct
Glissez pour afficher le menu
Une structure peut également comporter des méthodes en plus des champs de données. Dans une structure, la création d'une méthode s'effectue de la même manière que pour une méthode classique :
index.cs
123456789struct structureName { // some fields here (optional) public returnType methodName(parameter1, parameter2, ...) { // code } }
Par exemple :
index.cs
12345678910struct Player { public string name; public int score; public void displayScore() { Console.WriteLine($"{name} has {score} score"); } }
Dans la structure Player
, il existe une méthode appelée displayScore
qui affiche un message formaté contenant le name
et le score
. Il est important de noter que les valeurs de name
et score
seront différentes pour chaque objet (instance), ce qui signifie que la méthode displayScore
affichera un résultat différent pour chaque objet.
L'accès et l'exécution de la méthode se font via la syntaxe variableName.methodName()
. Voici comment utiliser la structure Player
:
index.cs
123456789101112131415161718192021222324252627282930using System; struct Player { public string name; public int score; public void displayScore() { Console.WriteLine($"{name} has {score} score"); } } class ConsoleApp { static void Main(string[] args) { Player player1 = new Player(); Player player2 = new Player(); player1.name = "SuperKillerPro"; player1.score = 100; player2.name = "Cyrex"; player2.score = 77; player1.displayScore(); player2.displayScore(); } }
Dans l'exemple, deux objets ont été créés à l'aide de la classe Player
et certaines données leur ont été attribuées. La méthode displayScore
a été appelée pour chaque objet et le résultat s'est avéré différent pour chacun d'eux.
Il est également possible d'avoir des méthodes avec des paramètres. Ajoutons une nouvelle méthode appelée addScore
qui augmente le score d'un montant spécifié et essayons de l'utiliser :
index.cs
12345678910111213141516171819202122232425262728293031using System; struct Player { public string name; public int score; public void displayScore() { Console.WriteLine($"{name} has {score} score"); } public void addScore(int add) { score += add; } } class ConsoleApp { static void Main(string[] args) { Player player1 = new Player(); player1.name = "SuperKillerPro"; player1.score = 100; player1.displayScore(); player1.addScore(70); player1.displayScore(); } }
On peut constater à la sortie que la méthode met à jour le score de 70
points.
1. Quel est un mot-clé valide pour déclarer une méthode ?
2. Quelle sera la sortie du code suivant ?
Merci pour vos commentaires !