Problème en énumération

Signaler
Messages postés
393
Date d'inscription
lundi 22 juin 2009
Statut
Membre
Dernière intervention
23 décembre 2011
-
Messages postés
1160
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
21 octobre 2010
-
Bonjour,

Voici le programme suivant portant sur les énumérations:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace lesson1
{
    public enum Genders { Male, Female };

public string firstName;
public string lastName;
public int age;
public Genders gender;
public Person(string _firstName, string _lastName, int _age, Genders _gender)
{
firstName = _firstName;
lastName = _lastName;
age = _age;
gender = _gender;
}

public override string ToString()
{
return firstName + " " + lastName + " (" + gender + "), age " + age;
}
    class Program
    {
        static void Main(string[] args)
        {
            Person p = new Person("Tony", "Allen", 32, Person.Genders.Male);
            Console.WriteLine(p.ToString());
        }
    }
}


Lors de compilation, j'ai les erreurs suivants:
C:\lesson1\lesson1\Program.cs(10,8): erreur CS1518: Class, delegate, enum, interface ou struct attendu
C:\lesson1\lesson1\Program.cs(11,8): erreur CS1518: Class, delegate, enum, interface ou struct attendu
C:\lesson1\lesson1\Program.cs(12,8): erreur CS1518: Class, delegate, enum, interface ou struct attendu
C:\lesson1\lesson1\Program.cs(13,8): erreur CS1518: Class, delegate, enum, interface ou struct attendu
C:\lesson1\lesson1\Program.cs(14,8): erreur CS1518: Class, delegate, enum, interface ou struct attendu
C:\lesson1\lesson1\Program.cs(22,17): erreur CS1518: Class, delegate, enum, interface ou struct attendu


Aidez moi pour résoudre ce problème.

Merci.

3 réponses

Messages postés
1160
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
21 octobre 2010
17
tu déclares des membres ainsi qu'un constructeur dans ton namespace lesson1. Tu dois etre dans une classe, et tu ne l'est pas. La dernière ligne correctement déclarée est celle de ton enum. toutes les suivantes jusqu'a "class Program" n'ont pas lieu d'être directement dans le namespace
Messages postés
393
Date d'inscription
lundi 22 juin 2009
Statut
Membre
Dernière intervention
23 décembre 2011
5
Donc quelle modification à faire ?
Messages postés
1160
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
21 octobre 2010
17
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace lesson1
{
//déclarer la classe Person ici
public enum Genders { Male, Female };
//ou la déclarer ici
public string firstName;
public string lastName;
public int age;
public Genders gender;
public Person(string _firstName, string _lastName, int _age, Genders _gender)
{
firstName = _firstName;
lastName = _lastName;
age = _age;
gender = _gender;
}

public override string ToString()
{
return firstName + " " + lastName + " (" + gender + "), age " + age;
}
//fermer la portée de la classe Person
class Program
{
static void Main(string[] args)
{
Person p = new Person("Tony", "Allen", 32, Person.Genders.Male);
Console.WriteLine(p.ToString());
}
}
}



Dans l'idéal, il faudrait tout de meme créer ta classe person dans un autre fichier