Salut,
D'abord, la réponse...
Tu verras, c'est tout bête: supprime le ; qui se trouve après l'accolade fermante de presenteToi, et tout rentrera dans l'ordre
Maintenant, les conseils:
1- N'oublie pas que lors de la définition d'une méthode, il faut quand même que la signature soit correcte: ainsi, la définition de ton constructeur ne serait pas
UneCitation::UneCitation( "auteur", "contenu")
mais
UneCitation::UneCitation(char* chaine, char *machaine)
pour respecter ce que tu as mis dans la déclaration de la fonction.
2- Si tu veux fournir une valeur par défaut, cela se fait dans la déclaration de la fonction, et non dans sa définition.
3- évite autant que tu peux les chaines de caractères "C style", et préfères leur la classe std::string qui est bien plus sécurisante à utiliser.
Tu pourra, entre autre, utiliser l'opérateur = et cela te permettra d'éviter d'avoir à "limiter" le nombre de caractères utile pour l'auteur et pour la citation.
Si tu coures déjà le risque de voir des auteurs dont le nom fait plus de 20 caractères, le risque devient énorme que la citation soit bien plus importante: regarde, tout simplement, la citation de ma signature: on est bien au delà des 20 caractères
4 -Enfin, penses au paradigme RAII: Quitte à fournir des informations au constructeurs, pourquoi ne pas envisager que la "récupération" de ces informations se fasse "ailleurs" et de tout de suite envoyer les bonnes informations au constructeur
Partager