Rechercher : dans
Par :

La classe en c++

Dernière réponse le 25 jun 2009 à 15:33:34 lamte01, le 25 jun 2009 à 14:12:17 
 Signaler ce message aux modérateurs

Bonjour,
mon programe ne se compile pas voici le fichier source
non du fichier lamte.h
#ifndef lamte
#define lamte
#include<stirng.h>
class ls {private:
char nom[20];
char prenom[20];
int age;
public:
ls(char n[20],char p[20],int a);
void saisir();
void afficher(); };
ls::ls(char n[20],char p[20],int a)
{ string(n,nom);
string(p,prenom);
a=age;}
void saisir::ls()
{ cout<<"donner votre nom ";cin>>nom;
cout<<"donner votre prenom ";cin>>prenom;
cout<<"donner votre age ";cin>>age;}
void afficher::ls() {cout<<"je m'appelle "<<nom<<" "<<prenom<<"\n";
cout<<"jai "<<age<<"\n"; }
#endif
nom du fichier lamte.c++
#include<iostream.h>
#include"lamte.h"
main( )
{ ls A; A.saisir(); A.afficher(); }
Merci

Configuration: Windows XP Internet Explorer 7.0

Meilleures réponses pour « la classe en c++ » dans :
La compilation et les modules en C et en C++ VoirCet article a pour vocation d'introduire les notions de bases de la compilation en C et en C++ et de la programmation modulaire. Il permet de mieux comprendre les messages d'erreur du compilateur. Les notions abordées ici sont indépendantes du...
Problème de lan server sur Counterstrike VoirProblème Comment jouer sur une partie privée à distance, sans que l'interface n'affich :"lan servers are restricted to local clients" Solution Cela se déroule en 2 temps. Utiliser la console développeur (commande du jeu) Soit vous avez déjà...
Adresse IP VoirSommaire Qu'est-ce qu'une adresse IP Déchiffrement d'une adresse IP Adresses particulières Les classes de réseaux (obsolète) Classe A Classe B Classe C Attribution des adresses IP Adresses IP réservées Masques de sous-réseau Interet...
Les classes en langage C++ VoirLa notion d'objet Le langage C est un langage procédural, c'est-à-dire que c'est un langage permettant de définir des données grâce à des variables, et des traitements grâce aux fonctions. L'apport principal du langage C++ par rapport au...
Les objets en langage C++ VoirLa création d'objets En C++, il existe deux façons de créer des objets, c'est-à-dire d'instancier une classe : de façon statique de façon dynamique La création statique La création statique d'objets consiste à créer un objet en lui affectant un...

1

Nabla's, le 25 jun 2009 à 14:28:20

Quel est le message d'erreur à la compilation?
peux tu utiliser les balises < code > et < /code > (sans espaces) pour concerver la présentation de ton code stp ?

Répondre à Nabla's

2

lamte01, le 25 jun 2009 à 14:39:31

Apres le rmplacement des des fonction menbre ls::saisir ( )
voici les erreurs
Dans le fichier inclus à partir de lamte.c++:2:
lamte.h:3:19: stirng.h : Aucun fichier ou répertoire de ce type
In file included from lamte.c++:2:
lamte.h: Dans constructor « ls::ls(char*, char*, int) »:
lamte.h:13: error: `string' undeclared (first use this function)
lamte.h:13: error: (Each undeclared identifier is reported only once for each
function it appears in.)
lamte.c++: Dans function « int main() »:
lamte.c++:4: error: no matching function for call to `ls::ls()'
lamte.h:4: error: candidates are: ls::ls(const ls&)
lamte.h:13: error: ls::ls(char*, char*, int)

Répondre à lamte01

3

Nabla's, le 25 jun 2009 à 14:46:57

Lamte.h:3:19: stirng.h : Aucun fichier ou répertoire de ce type

-> avec string.h ca marcherai mieux... tu sais, il faut lire les messages !

void saisir::ls()
-> le nom de ta classe est ls, donc tu dois faire void ls::saisir()
pareil pour afficher

dans ton .h, le seul constructeur est un constructeur parametré: ls(char n[20],char p[20],int a);
hors, dans le .cpp, tu appelles ls A , donc un constructeur par défaut (sans paramètres) qui n'existe pas !
de plus, tu es dans le forum unix, je demande la migrationd e ton message vers le forum prorgammation

Répondre à Nabla's

4

lamte01, le 25 jun 2009 à 15:19:36

En cpp comment mettre un constucteur avec parametre

Répondre à lamte01

5

 Nabla's, le 25 jun 2009 à 15:33:34

Sois tu fais ton main comme ca:

main( )
{ 
    ls A("roger","thierry",25); 
    A.saisir(); 
    A.afficher(); 
} 


soit tu fais un constructeur vide (vu que tu appelles "saisir")
ls::ls()
{}

Répondre à Nabla's
Collection CommentÇaMarche.net