Bonsoir,

Je débute en C++ et j'ai beau me battre des heures et parcourir le oueb, rien n'y fait.
En gros, je veux une sorte de std::cout personnalisé qui m'affiche tout non pas sur la stdout mais dans un endroit à moi ( en l'occurrence une Textview de gtk ).
Par exemple, je veux pouvoir faire:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
maFonction << "je" << "suis " << 1 << " chaine" << endl;
Mais je ne m'en sort pas.
La seule chose que je suis arrivé a faire c'est ça:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
class MaClass {
      /* ...  */
      template<typename T> void operator <<(const T& stuff);
}
 
/*  ...  */
 
template<typename T>
void MaClasse::operator <<(const T& stuff){
    cout << "Test: " << stuff << endl;
}
/* ...  */
MaClasse obj;
qui me permet de faire ça:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
obj << "plop"; // ou meme:
obj << 2;
Mais pas:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
obj << "plop" << "autre plop";
auquel cas g++ me dit que je n'ignore pas le void comme je le devrai. Je comprend bien g++, je suis d'accord, mais comment faire ?

J'ai un peu essayer de regarder du côté de la surcharge des opérateur << et >> de iostream et autre stringstream mais honnêtement je n'y comprend plus grand chose.

Quelqu'un peut-il m'aider ?

Note: Merci d'être indulgent si j'ai dit de grosses bêtises par exemples