Erreur conversion from `Sportif*' to non-scalar type `Sportif' requested
lordskyser1
Messages postés84Date d'inscriptionlundi 31 mars 2003StatutMembreDernière intervention 1 juillet 2006
-
15 mars 2006 à 19:56
zaibacker
Messages postés98Date d'inscriptionvendredi 17 février 2006StatutMembreDernière intervention24 janvier 2018
-
16 mars 2006 à 10:59
Bonjour,
je débute en C++ et je tente de compiler ma première classe sans y arriver, car je n'arrive pas à comprendre le message d'erreur de dev c++.
header.h
#include <cstdlib>
#include
#include <string>
#include
using namespace std;
Sportif.h
#include "header.h"
/****************************************************************
Interface de la classe sportif
******************************************************************/
class Sportif {
private:
int age;
string nom;
string prenom;
int formePhysique;
/****************************************************************
Implémentation de la classe sportif
******************************************************************/
void Sportif::toString(){
cout << "Nom : " << nom << " prenom : " << prenom << " age : " << age << " forme physique : " << formePhysique;
}
main.cpp
#include "header.h"
#include "Sportif.h"
int main(int argc, char *argv[])
{
Sportif sport = new Sportif(18,"John","john",25);
sport.toString();
system("PAUSE");
return EXIT_SUCCESS;
}
Voilà, il n'y a pas grand chose, mais apparemment j'ai déjà commis une erreur ! Voici ce que me dit le compilateur :
In function `int main(int, char**)':
main.cpp conversion from `Sportif*' to non-scalar type `Sportif' requested
Makefile.win [Build Error] [main.o] Error 1
Si vous pouviez m'aider assez rapidement se serait vraiment gentil de votre part, car je dois résoudre ce problème pour après demain au plus tard. Merci beaucoup pour vos réponses,
Bonne soirée, et bonne prog
A voir également:
Conversion to non-scalar type requested
Error: conversion to non-scalar type requested - Meilleures réponses
Conversion to non scalar type requested - Meilleures réponses
lordskyser1
Messages postés84Date d'inscriptionlundi 31 mars 2003StatutMembreDernière intervention 1 juillet 2006 16 mars 2006 à 10:36
Génial, merci! ca marche effectivement. Par contre j'ai un soucis par
la suite, le compilateur me dit que la procédure toString() n'est pas
déclarée!!! Pourtant si je fais
Sportif sport;
sport.toString();
Ca fonctionne, donc c'est qu'elle est bien déclarée! Donc j'ai essayé des trucs comme :
Sportif * sport = new Sportif(18,"John","john",25);
* sport.toString();
ou
Sportif * sport = new Sportif(18,"John","john",25);
&sport.toString();
Mais ca me marque toujours le même message, dans main.cpp :
11 `toString' has not been declared
11 request for member of non-aggregate type before '(' token