C# message d'erreur pas assez explicite pour moi
Thomas33
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
J'ai un problème avec mon code et je n'arrive pas à l'identifier.
On me dit : "exception levée"
"System.NullReferenceException:'La référence d'objet n'est pas définie à une instance d'objet'
On me dit l'erreur à la ligne 28
Voici mon code:
J'ai un problème avec mon code et je n'arrive pas à l'identifier.
On me dit : "exception levée"
"System.NullReferenceException:'La référence d'objet n'est pas définie à une instance d'objet'
On me dit l'erreur à la ligne 28
Voici mon code:
static void Main(string[] args) { public class Rectangle { private float longueur; private float largeur; public Rectangle() { } public Rectangle(float longueur, float largeur) { this.longueur = longueur; this.largeur = largeur; } public float surface() { return longueur * largeur; } private static float sommeSurface(List<Rectangle> rectangles) { float totalSurface= 0; foreach(Rectangle rectangle in rectangles) { totalSurface += rectangle.surface(); } return totalSurface; } } }
Configuration: Windows / Opera 83.0.4254.70
A voir également:
- C# message d'erreur pas assez explicite pour moi
- Recuperer message whatsapp supprimé - Guide
- Message supprimé whatsapp - Guide
- Message absence thunderbird - Guide
- Epingler un message whatsapp - Accueil - Messagerie instantanée
- Message du pere noel gratuit whatsapp - Accueil - Messagerie instantanée
5 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
es-tu certain d'avoir partagé ton code complet?
es-tu certain d'avoir partagé ton code complet?
En vrai, c'est quelque chose comme ça :
(Pour la fonction d'en bas, je n'arrivais pas à la coller à gauche de peur que ça ne marche plus du tout)
(Pour la fonction d'en bas, je n'arrivais pas à la coller à gauche de peur que ça ne marche plus du tout)
public class Rectangle { private float longueur; private float largeur; public Rectangle() { } public Rectangle(float longueur, float largeur) { this.longueur = longueur; this.largeur = largeur; } public float surface() { return longueur * largeur; } } private static float sommeSurface(List<Rectangle> rectangles) { float totalSurface= 0; foreach(Rectangle rectangle in rectangles) { totalSurface += rectangle.surface(); } return totalSurface; }
Bonjour,
En effet, l'erreur vient certainement du code que tu n'as pas montré.
Ta
En effet, l'erreur vient certainement du code que tu n'as pas montré.
Ta
Listde
Rectanglecontient un ou des
Rectanglequi est resté
null. Chaque élément dans ta
Listdoit impérativement être un
Rectangleinitialisé.
Pour le moment, la fonction
Tu peux la transformer en ne sommant que les
sommeSurface()calcule la somme des surfaces de la
Listde
Rectanglequi lui est passée.
Tu peux la transformer en ne sommant que les
Rectanglevalides. C'est n'importe quoi, une fonction qui ne reçoit pas des paramètres valides ne peut pas faire quelque chose de sensé, ça serait:
private static float sommeSurface(List<Rectangle> rectangles) { float totalSurface = 0; foreach ( Rectangle rectangle in rectangles ) { if ( rectangle != null ) totalSurface += rectangle.surface(); } return totalSurface; }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour Thomas.
Comme tu ne sembles pas comprendre la "portée" de ton problème.
Je te propose de mettre un point d'arrêt à la ligne
Et avec les outils de déboggage, de regarder le contenu de la variable "rectangles"
Et là, peut-être tu comprendras ce que Dalfab (que je salue au passage) essaye de t'expliquer, et je cite
Comme tu ne sembles pas comprendre la "portée" de ton problème.
Je te propose de mettre un point d'arrêt à la ligne
float totalSurface = 0;
Et avec les outils de déboggage, de regarder le contenu de la variable "rectangles"
Et là, peut-être tu comprendras ce que Dalfab (que je salue au passage) essaye de t'expliquer, et je cite
En effet, l'erreur vient certainement du code que tu n'as pas montré.ou encore
C'est n'importe quoi, une fonction qui ne reçoit pas des paramètres valides ne peut pas faire quelque chose de sensé