Création
d'entreprise
Posez votre question Signaler

[string C++] ::>>> bien Relou [Résolu]

Arno - Dernière réponse le 29 nov. 2006 à 16:59
Bonjour j'ai pas mal de problemes en C++ pour faire un toString() pour une classe nommée vecteur.
en effet je connai mieu le java ou c'est vraiment plus simple de manipuler des chaines de caracteres. voici l'état de mon code:
void Vecteur::toString(){
  cout << getX() <<";" << getY() << endl;
}

donc pour le moment j'affiche seulement les coordonnées x et y avec un cout.
et ma fonction ne retourne rien.
j'aimerais pluto que ma fonction retourne un string mais je misere pour concatener et caster mes coordonnees (qui sont des floats) en string.
j'espere que vous mavez suivi
Lire la suite 

[string C++] ::>>> bien Relou »

Suggestions
1 réponses
Réponse
+0
moins plus
Dans cet exemple je définis d'un coup l'opérateur d'écriture pour les sorties standards std::cout et std::cerr (de type std::ostream) et pour les fichiers (de type std::ofstream) grâce à un template. Les fonctions template doivent impérativement être intégralement dans le .hpp
#include <iostream>

class vecteur{
  protected:
  double x;
  double y;
  public:
  vecteur(){}
  vecteur(const double & x0,const double & y0):x(x0),y(y0){}
  inline void setx(const double & x0){x = x0;}
  inline void sety(const double & y0){y = y0;}
  inline const double & getx() const {return x;}
  inline const double & gety() const {return y;}
};

template <typename Tstream>
Tstream & operator << (Tstream & out,const vecteur & v){
  out << v.getx() << ' ' << v.gety();
  return out;
}

int main(){
  vecteur v1(5.0,3.6);
  std::cout << v1 << std::endl;
  return 0;
}

Bonne chance
Ajouter un commentaire
Ce document intitulé « [string C++] ::>>> bien Relou » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?