Bonjour, j'essaie d'écrire une fonction qui me permet d'écrire un objet dans un fichier binaire.


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
template <class T>
void Util::Ecrire(const std::string& filepath, const T& objet) 
{
    std::ofstream myfile(filepath.c_str(), std::ios::binary);
    if (!myfile) {
        std::cerr << "Erreur d'écriture." << std::endl;
        return;
    }
    myfile.write( reinterpret_cast<const char *>(objet), sizeof(T));
    myfile.close();
}

Et je l'appelle en faisait par exemple

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
Util::Ecrire("banane.cfg", m_glCanvas);
Mais alors voilà ca ne plante pas cependant ca m'écrit seulement 2 petits caractères dans mon fichier (ce qui ne fait pas vraiment de sens puisque mon objet est quand même volumineux)

Est-ce qu'il faut quelque chose de spécial à mon constructeur de copie car la j'ai seulement

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
GL_MAILLAGE(const GL_MAILLAGE &mesh);