begin process at 2010 02 10 03:30:36
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Mono

 > 

Général

 > 

un constructeur appelle un autre constructeur de la même class...


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

un constructeur appelle un autre constructeur de la même class...

samedi 4 juillet 2009 à 09:31:19 | un constructeur appelle un autre constructeur de la même class...

spilz

Bonjour à tous,

je sais que plusieurs discutions portent sur le sujet, mais j'ai beau les lire, je n'arrive pas à comprendre comment faire ce que je veux :

voila le principe :


namespace Fichier_HEX
{
    public class Poi
    {
        private double _latitude;

        public Poi(double latitude)    // mon constructeur "principal"
        {
            _latitude = Math.Abs(latitude);
        }

        public Poi(double Deg, double min)
        {
            double temp = Deg + min/60;
            Poi(temp);
        }
    }
}

bien évidemment ça ne fonctionne pas :(
là c'est un exemple, dans la réalité le calcul dans le deuxième constructeur est plus compliqué

est-ce possible de faire des constructeurs dans cet esprit? comment?

merci d'avance


samedi 4 juillet 2009 à 12:04:06 | Re : un constructeur appelle un autre constructeur de la même class...

casy

Membre Club
Tu as quoi comme message d'erreur ?


---- Sevyc64  (alias Casy) ----
# LE PARTAGE EST NOTRE FORCE #    [ Lien ]
samedi 4 juillet 2009 à 13:04:34 | Re : un constructeur appelle un autre constructeur de la même class...

spilz

erreur à la compilation :
" 'Project.Poi' is a 'type' but it used like a 'variable' "
samedi 4 juillet 2009 à 13:35:25 | Re : un constructeur appelle un autre constructeur de la même class...

casy

Membre Club
Ok j'avais zappé la dernière ligne de ton constructeur, c'est pour cela que ça marchait chez moi (et accessoirement que je ne comprennais pas le titre de ton post )

Tu n'as pas à rapeller le contructeur de ta classe, ta classe est déjà construite. Par contre, comme dans le premier constructeur, c'est la variable ionterne qui est à initialiser :

namespace Fichier_HEX
{
    public class Poi
    {
        private double _latitude;

        public Poi(double latitude)    // mon constructeur "principal"
        {
            _latitude = Math.Abs(latitude);
        }

        public Poi(double Deg, double min)
        {
            double temp = Deg + min/60;
            Poi(temp);
            _latitude = Deg + min/60;
        }
    }
}

---- Sevyc64  (alias Casy) ----
# LE PARTAGE EST NOTRE FORCE #    [ Lien ]
samedi 4 juillet 2009 à 17:06:47 | Re : un constructeur appelle un autre constructeur de la même class...

Robert33

Membre Club
bonjour
Pour info, pour appeler un constucteur depuis un autre, il faut mettre l'appel en série:
ex:
public Poi(double deg, double min) : this (deg + min/60) {}

mais évidament dans ce cas cela rend le code complex pour rien, la solution proposée par casy reste la meilleure.


C# is amazing, enjoy it!
samedi 4 juillet 2009 à 19:48:05 | Re : un constructeur appelle un autre constructeur de la même class...

spilz

en fait j'ai donné ici un exemple simple, en réalité le code de transformation est beaucoup plus complexe et long
il y a aussi plusieurs constructeurs en cascades pour tout paramettrer et je ne voullais pas recopier tout le code à chaque fois

si je comprends bien je ne vais pas avoir le choix, il faudra que je recopie à chaque fois le code?

merci de votre aide

spilz
samedi 4 juillet 2009 à 20:41:29 | Re : un constructeur appelle un autre constructeur de la même class...

casy

Membre Club
Le code n'a pas forcément besoin d'être dans le constructeur, il peut très bien être arrangé dans des procédures ou fonctions propres à ta classe qui seront appelées depuis les différents constructeurs


---- Sevyc64  (alias Casy) ----
# LE PARTAGE EST NOTRE FORCE #    [ Lien ]
samedi 4 juillet 2009 à 21:18:18 | Re : un constructeur appelle un autre constructeur de la même class...

spilz

ok, merci
c'est ce que j'ai fait et ça fonctionne
merci et bonne soirée

spilz


Cette discussion est classée dans : class, double, constructeur, poi, latitude


Répondre à ce message

Sujets en rapport avec ce message

Je trouve tjs pas de solution pour mon blem "A l'aide" [ par hred1 ] Bon j'explique tout:J'ai le même namespace par toutje suis dans la class 1 (class fraim ok)et je cherche à appler  methode() qui de trouve dans class Empêcher appel constructeur class mère [ par Foxhive ] Bonjour à tous,J'ai un gros soucis j'ai cherché toute la journée et je n'ai pas trouvé de solution...J'ai une class A et B; B hérite de A et lorsque j class tableau de classe virtuelle. [ par zbar ] Bonjour, J'ai un problème pour créer une class qui regroupe les élements d'une class virtuelle:le code:  public détecter si l'évenement double click et détecter ou non [ par sws2007 ] bonjour ; comment pourrais je tester si l'évènement double clic et déclencher ou non lorsque  je clique sur une cellule de mon datagridviewmerci Garder les reference de class ou de type int,string,... dans une collection ou dans un tableau est possible? [ par nidk ] Voici mon soucis:  void Add (ref int o)  {      list.add (o);  }/*dans mon main*/i= 10;myclass.add(ref i);i =20;Mon soucis est que dans ma list i est Comment afficher les coordonées de trois sinusoides [ par damsdu64 ] Bonjour tout le monde, je suis étudiant et j'ai besoin de vos conseils étant novice dans le C#.  Mon objectif est de créer un utilitaire qui enverra d App_Code & LinqToSQL.dbml [ par Djzlouk ] Bonjour, Apres quelques site en VB.NET je me lance dans le C# !Il n'y a pas beaucoup de différence, mais un peu quand meme... Si bien que je suis bloq Equivalent du Java (Double.longBitsToDouble) [ par mamamiya92 ] Bonjour à tous.Quelqu'un connaitrait l'équivalent C# de la ligne de code suivante:Double.longBitsToDouble();Merci d'avance.Prière de pardonner aux déb Dépendance Circulaire [ par Redfire ] Bonjour, je débute en C# et je me retrouve face à un problème.Je m'essaie au développement en couche, je dispose d'une classe library qui contient tou Erreur de class ? [ par belette321 ] Bonjour,Voilla j'ai reccuperrer des source qui on ete decompiler. Quand je tente de compiler je n'optien qu'une seul erreur qui est la suivante "Une c


Nos sponsors


Sondage...

Comparez les prix


HTC Magic

Entre 429€ et 429€

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,562 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales