begin process at 2012 05 27 18:34:32
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Astuces

 > MANIPULATEURS

MANIPULATEURS


 Information sur la source

Note :
Aucune note
Catégorie :Astuces Niveau :Débutant Date de création :04/03/2003 Date de mise à jour :04/03/2003 13:46:19 Vu :2 049

Auteur : superpa

Ecrire un message privé
Site perso
Commentaire sur cette source (3)
Ajouter un commentaire et/ou une note

 Description

Explique comment on peut facilement créer des manipulateurs

Source

  • ostream& tab(ostream& fl)
  • {
  • fl << "\t";
  • return fl;
  • }
  • c'est très simple:
  • on l'utilise:
  • cout << "avant tab " << cls << "apres tab";
  • Ca peut aussi marcher pour les fichiers puisque la classe ofstream est dérivée de ostream. C'est aussi le cas de cout puisqu'il instancie en réalité un objet de la classe ostream_withassign (ou qqch comme ca)
ostream& tab(ostream& fl)
{
fl << "\t";
return fl;
}

c'est très simple:
on l'utilise:
cout << "avant tab " << cls << "apres tab";

Ca peut aussi marcher pour les fichiers puisque la classe ofstream est dérivée de ostream. C'est aussi le cas de cout puisqu'il instancie en réalité un objet de la classe ostream_withassign (ou qqch comme ca)

 Conclusion

Ce système est extensible, alors créer vos propres manipulateurs pour effecteur des opérations plus complexes: affichage en gras, ...


 Sources du même auteur

Source avec Zip Source avec une capture AFFICHER UNE TEXTURE DE FOND
Source avec Zip Source avec une capture Source .NET (Dotnet) BARRE D'ETAT
Source avec Zip BULLES D'AIDE
MANIPULATEURS A PARAMETRES
RECUPERATION DE ARGC ET ARGV DANS UNE APPLIC GRAPHIQUE

 Sources de la même categorie

Source avec Zip Source avec une capture EVAL EXPRESSION COMPLEXE EN 15 LIGNES DE CODE par yann_lo_san
Source avec Zip SCHEDULER RR FIFO par yvesB87
Source avec Zip ALGORITHMES RÉCURSIFS VS ALGORITHMES ITÉRATIFS par yvesB87
Source avec Zip Source avec une capture C++ FORMAT D'IMAGE AVEC QT par pop70
Source avec une capture EXEMPLE DE POINTEURS DE FONCTION par pop70

Commentaires et avis

Commentaire de D1m3x le 04/03/2003 14:23:11

Je vais ajouter ce commentaire pour que u en doivent pas fare un code pour caque chose :):
vous pouvez également faire ca avec le
alor vous faites tou simplement cela:$

ostreamé finl (ostream& fl)
{
  fl &lt;&lt; "
"; // fera un saut de ligne
  return fl;
}
ostream& tabv (ostream& fl)
{
  fl &lt;&lt; "v"; // fera ne tabulation verticale
  return fl;
}

Et pui s vous pouvez encore le faire avec n'importe quel chose de la sorte, encore merci pour tout test conseil  superpa

Commentaire de superpa le 05/03/2003 08:49:05

Je te l'ai déjà dit et je te le répète:
le finl est totalement inutile, il existe déjà !!! (endl)
C'est bcp plus utile pour tabv.
Au fait, vous savez grâce à quoi il est possible d'étendre le système des manipulateurs?

Commentaire de superpa le 10/03/2003 14:43:56

Voici pourquoi:
La classe ostream (et aussi istream) possède une surchage de l'opérateur &lt;&lt; :
ostream& operator &lt;&lt; (ostream& (*_f)(ostream&)
Et oui, vous lisez bien: le paramètre est un pointeur de fonction.
C'est grâce à cela que l'on peut écrire nos propres manipulateurs à conditions que leur prototype corresponde à celui du ptr =&gt; ostream& f (ostream&). Ceci ne permet dons pas de créer des manipulateurs à paramètres. Alors comment faire? Soyez patients, d'ici la fin de la semaine je mettrai une source qui l'explique (elle s'intitulera manipulateurs à paramètres)

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,421 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales