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 :

Retour de Fonction de type structure


Sujet :

C++

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 4
    Points : 4
    Points
    4
    Par défaut Retour de Fonction de type structure
    Bonjour tout le monde !

    J'ai recherché s'il y avait déjà une solution à mon problème sans succès.

    Je vous le décrit : j'aimerai affecter des valeurs ( données par une fonction prenant en argument une struture) à une autre structure, et tout cela dans une superstructure, cependant cela ne fonctionne pas.
    Auriez vous la gentillesse de me guider dans la résolution ??!

    voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    class POINT_DE_MAILLAGE
    {
     
    		class MESH_CYL_COORDINATES
    		{
    			public:
    				float x;
    				float r;
    				float theta;
    		};
     
    		class MESH_CART_COORDINATES
    		{
    			public:	
    				float x;
    				float y;
    				float z;
     
    				x=1;
    				y=1;
    				z=0;	
     
     
     
     
    		};
     
    		MESH_CART_COORDINATES var_cart;
    		MESH_CYL_COORDINATES var_cyl;
     
    		//float cart2cyl(MESH_CART_COORDINATES x,MESH_CART_COORDINATES y,MESH_CART_COORDINATES z)
    		float cart2cyl(MESH_CART_COORDINATES var_cart)
    		{
    			float r;
    			float theta;
     
    			var_cyl.x	= 	var_cart.x;
    			var_cyl.r	=	sqrt(var_cart.y*var_cart.y+var_cart.z*var_cart.z);
    			var_cyl.theta	=	atan2(var_cart.y,var_cart.z);
    		return var_cyl.x;
    		}
     
    		(var_cyl.x, var_cyl.r, var_cyl.theta)	=	cart2cyl(var_cart);
     
    };
     
     
    int main (int argc, char **argv)
    {
    	POINT_DE_MAILLAGE point;
     
    	//point.var_cart.x=1;
    	//point.var_cart.y=1;
            //point.var_cart.z=0;
     
    	printf("coordonnees de M en cartesien    x=%f\t y=%f\t z=%f\n",point.var_cart.x, point.var_cart.y, point.var_cart.z);
    	printf("coordonnees de M en cylindrique   x=%f\t r=%f\t theta=%f\n",point.var_cyl.x, point.var_cyl.r, point.var_cyl.theta);
    }

    D'apres les coordonnées cartésiennes, je souhaite que ma fonction cart2cyl me donne les coordonnées cylindriques associées aux variables x,r,et theta de ma class MESH_CYL_COORDINATES.
    Merci de la rapidité

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    195
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 195
    Points : 115
    Points
    115
    Par défaut
    Bonjour,

    Le code est truffé d'erreur de compréhension en C++.
    Je ne peux que te conseiller d'ouvrir un bon bouquin de C++ ( voir de C ) avant de te plonger dans ce genre de probleme.

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    c'est effectivement vrai,

    après relecture est aide de collègue j'arrive à un résultat, certe toujours incorrect, mais qui ressemble plus à quelque chose de bon :
    Cependant, il ne veux pas compiler, sans doute un soucis au niveau de la défénitiion de ma fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    class POINT_DE_MAILLAGE
    {
    	public:
     
     
    		class MESH_CYL_COORDINATES
    		{
    			public:
    				float x;
    				float r;
    				float theta;
    		};
     
    		class MESH_CART_COORDINATES
    		{
    			public:	
    				float x;
    				float y;
    				float z;
     
    		};
     
    		MESH_CART_COORDINATES var_cart;
    		MESH_CYL_COORDINATES var_cyl;		
     
     
    		MESH_CART_COORDINATES cart2cyl(MESH_CART_COORDINATES var_cart);
    		var_cyl  = cart2cyl(MESH_CART_COORDINATES var_cart);
     
    };
     
     
    MESH_CART_COORDINATES POINT_DE_MAILLAGE::cart2cyl(MESH_CART_COORDINATES var_cart)
    		{
    			MESH_CYL_COORDINATES var_cyl;
     
    			var_cyl.x	= 	var_cart.x;
    			var_cyl.r	=	var_cart.y+1;
    			var_cyl.theta	=	var_cart.z+3;
    			return var_cyl;
    		}
     
     
     
     
    int main (int argc, char **argv)
    {
    	POINT_DE_MAILLAGE point;
     
    	point.var_cart.x=1;
    	point.var_cart.y=1;
            point.var_cart.z=0;
    	printf("x=%f",point.var_cyl.x);
    	//printf("coordonnees de M en cartesien    x=%f\t y=%f\t z=%f\n",point.var_cart.x, point.var_cart.y, point.var_cart.z);
    	//printf("coordonnees de M en cylindrique   x=%f\t r=%f\t theta=%f\n",point.var_cyl.x, point.var_cyl.r, point.var_cyl.theta);
    }

Discussions similaires

  1. type de retour de fonction template
    Par k1000 dans le forum Langage
    Réponses: 5
    Dernier message: 21/04/2008, 11h41
  2. Réponses: 3
    Dernier message: 19/03/2008, 22h11
  3. Type structure en param d'une fonction
    Par totoche dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 28/02/2007, 14h26
  4. Réponses: 1
    Dernier message: 25/01/2006, 10h30
  5. Perte de type en retour de fonction
    Par Bebel dans le forum Langage
    Réponses: 8
    Dernier message: 22/12/2005, 12h54

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