IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Fonction Main en C# [Débutant]


Sujet :

C#

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2010
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 17
    Points : 14
    Points
    14
    Par défaut Fonction Main en C#
    Bonsoir tout le monde,
    Y a t-il quelqu'un qui puisse m'expliquer la difference entre:
    1- Public static void main()
    2- Public static int main(string[] mesArguments)
    3- Public static void main(string[] mesArguments).

    Merci.

  2. #2
    Membre averti
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Janvier 2011
    Messages
    456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2011
    Messages : 456
    Points : 386
    Points
    386
    Par défaut la #
    dans le 1er cas c'est une methode sans parametre d'entree et sans type de retoure (void)
    pour la 2eme on a du parametres d'entree qui est tableau de string , et un retoure pour la methode de type int.
    dans la 3eme cas , parametres d'entree sans parametre de retour

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 134
    Points : 54
    Points
    54
    Par défaut
    Très bonne explication de genius4evers et c'est ce que tu devras répondre lors d'un entretiens avec ton futur boss.

    Autre petit explication plus simple "J’espère":

    Compare ta méthode main à un ouvrier de chantier.

    Citation Envoyé par bados87 Voir le message
    1- Public static void main()
    1-Pour cette méthode ton ouvrier n'as pas besoin d'outils et il ne te retourne aucune information sur ce qu'il fait.
    Citation Envoyé par bados87 Voir le message
    2- Public static int main(string[] mesArguments)
    2-Ton ouvrier te demande une palette de brique (string[]) et il te retourne un certain nombre(int), exemple le nombre de mur qu'il aura construit avec ce que tu lui à fournis.

    Citation Envoyé par bados87 Voir le message
    3- Public static void main(string[] mesArguments).
    3-Même exemple, cela dit ton ouvrier ne te dira rien sur ce qu'il a produit.

    J'espere que mes exemples sont claire.

  4. #4
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 170
    Points : 7 422
    Points
    7 422
    Billets dans le blog
    1
    Par défaut
    A noter que seule la seconde est conforme à la norme ANSI : un programme doit toujours retourner un code de retour (le bon vieux ERRORLEVEL de MS-DOS).

    L'application doit retourner 0 si elle s'est bien déroulée.
    Sinon, un nombre positif, correspondant à un numéro d'erreur.

    Ceci afin que le programme appelant puisse prendre une décision lorsqu'il reprend la main.

    Windows triche un peu dans la mesure où, lorsque :
    - Tu as void en retour OU que tu plantes sauvagement
    => Il retourne pour toi la valeur 0 s'il n'y a pas d'erreur.
    => Sinon il renvoi le numéro de l'exception interne au programme lorsqu'il a planté.

    La norme ANSI étant nécessaire pour certaines certifications (genre ISO), il est important de savoir cet élément, puisque faire retourner VOID par Main (ou de retourner n'importe quel INT sans règle précise) empêchera l'entreprise qui commercialise le programme d'obtenir sa certification.

    Donc, contraitement à ce que dit c-bolo : ton programme peut construire autant de murs qu'il veut, s'il ne plante pas, il doit IMPERATIVEMENT retourner 0.
    Sinon, c'est qu'il y a eu une erreur. Par exemple, si ton ouvrier se foule une cheville en posant une brique sur le mur numéro 5, alors tu peux retourner 5, indiquant que ton mur numéro 5 n'a pas été terminé convenablement.

  5. #5
    Membre à l'essai
    Inscrit en
    Avril 2010
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 17
    Points : 14
    Points
    14
    Par défaut
    Merci infiniment pour vos explications.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 21
    Dernier message: 20/06/2006, 16h49
  2. fonction main en C++
    Par steph_nied dans le forum C++
    Réponses: 3
    Dernier message: 26/05/2006, 15h03
  3. arguments dans ma fonction main
    Par salseropom dans le forum C
    Réponses: 10
    Dernier message: 15/03/2006, 23h12
  4. la fonction main
    Par harvouj dans le forum Langage
    Réponses: 1
    Dernier message: 13/02/2006, 01h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo