begin process at 2012 05 28 22:39:19
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Débutant(e)

 > 

constructeur de conversion explicite


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

constructeur de conversion explicite

mardi 9 novembre 2010 à 17:18:59 | constructeur de conversion explicite

eishtein

bonjour les gars;
comme je suis un débutant en c++, j'aimerais bien savoir comment on pourrait convertir un nombre de type quelconque en un nombre de type 'COMPLEXE' via un constructeur de conversion explicite autre que celui défini par la classe suivante :
Code C/C++ :
#include <iostream>
class complex
{
   public:
     complex(double=0.,double=0.);
     complex operator+=(complex);
     complex operator-=(complex);
   private:
     double a,b;
}

Ceci bien sûr de tel sorte à ce que mon constructeur par défaut fasse lui-même la conversion exlpicite comme c'est le cas pour les autres types prédéfinis [CE QUI EST UN PEU EMBARRASSANT].je vous serais très reconnaissant de me répondre à ce message.
ET MERCI D'AVANCE
mardi 9 novembre 2010 à 18:01:42 | Re : constructeur de conversion explicite

CptPingu

Administrateur CodeS-SourceS
Réponse acceptée !
Que cherches-tu à faire ?
A faire en sorte qu'un nombre réel soit convertis en nombre complexe ?

Dans ce cas tu fais un deuxième constructeur qui prend un en argument un nombre réel.

Code C/C++ :
complex::complex(double i = 0.)
 : a(i), b(0)
{
}


Ainsi, une variable de type complexe peut être initialisé avec un nombre réel.
Pour faire des calculs entre un nombre réel et un nombre imaginaire, il te faut aussi redéfinir les operateurs de ta classe (tu en ajoutes d'autre).
Code C/C++ :
     complex operator+=(complex);
     complex operator-=(complex);
     complex operator+=(double);
     complex operator-=(double);


Quelques remarques totalement facultatives:
- Une classe prend généralement une majuscule
- Un attribut de classe est différencié des variables par un "_". Exemple: a devient _a
- Indique le nom de la variable dans un prototype de fonction plutot que de mettre que le type, c'est plus lisible.

________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio
Merci d'utiliser Réponse acceptée si un post répond à votre question
mardi 9 novembre 2010 à 23:37:17 | Re : constructeur de conversion explicite

eishtein

merci pour la réponse...tout est clair maintenant à part un détail: est-t-il préférable de déclarer une méthode pour transférer une variable dans la partie imaginaire , ou bien est-ce que c aussi faisable avec mon constructeur par défaut? JE M'EXPLIQUE :
==>dans le cas ou j'ai un double -12.543 que j'ai reçu comme donnée du DELTA d'une équation , ce qui veut dire bien évidemment qu'il faut le convertir en un '(12.543)i'.
mardi 9 novembre 2010 à 23:56:22 | Re : constructeur de conversion explicite

CptPingu

Administrateur CodeS-SourceS
Réponse acceptée !
Si tu as bien tout suivi, tu peux faire ceci:

Code C/C++ :
Complexe c(0,0);
double d = -12.543;
c = d;


________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio
Merci d'utiliser Réponse acceptée si un post répond à votre question


Cette discussion est classée dans : conversion, double, constructeur, explicite, complex


Répondre à ce message

Sujets en rapport avec ce message

CONVERSION DOUBLE CHAR [ par DeAtHCrAsH ] Salut,J'ai un ptit pb... Je suis debutant et j'ai un ptit prob...Je veux utiliser la fonction atof mais quand je compile ca me dit : undeclared identi conversion double en string [ par bouba ] Bonjour, je réalise une fonction qui doit calculer le nombre de caractères d'un doubleexemple:-7.56 -> 5 caractèreExiste t'il une fonction qui fasse c Conversion char -> double [ par titpeste ] Bonjour,je manipule des doubles avec 20 chiffres a peu pres derriere la virgule.Ils sont stockés dans des chaines de caracteres.Mais lorsque je fais u Conversion Double en Charactere. [ par ordy ] Bonjour,Quelqu'un c'est comment convertir un double en charactere.parce que dans mon bout de code le voici:double N;N=(m_strBuffer2[17]+m_strBuffer2[1 Conversion char -> double [ par obby ] Bonjour,   J'ai un petit souci, j'utilise la fonction atof() pour faire la conversion d'une chaine de caractère (ex : ".00000E+00") vers un double. C Appel du destructeur inopinément [ par petitavion414 ] Bonjour à tous... Voilà j'ai un petit problème. J'ai crée une classe complex dans laquelle j'ai defini quelques méthodes. Jusqu'ici rien de bien passi conversion double -> char [ par juliedb ] voila on a un probleme....examen dans qql heure et on voudrait savoir comment convertir des variables double en char... Conversion chaine binaire en float, double... [ par renyone ] Bonjour, j'ai une chaine binaire (de 32 bits par exemple) et j'aimerais obtenir le float (ou double...) qu 'elle représente; Y a-t-il des fonctions dé conversion double en char* [ par snakers07 ] bonjour, voici mon probleme void grilleSetText(ligne,colonne,char*Text;) est une fonction comme ont peut le voir qui pren en parametre char*or j'ai un Conversion de double en long [ par morphi ] Bonjour,Un petit probleme posé lors du codade ..J'ai un double dvaleur = 1.00000, je le convertie en long par casting :lvaleur=(long)dvaleuret je me r


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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,281 sec (4)

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