Voici la procédure que j'utilise pour les test
En testant différentes tailles lors de l'initialisation (dans le constructeur)
il m'arrive que le return 0 du main() génére une exception avec le message suivant
Free Heap block 1345b0 modified at 1345e4 after it was freed
Je cherche mais je n'ai toujours pas compris pourkoi ??????
Je sais qu'avait la valeur 100, le code suivant termine en erreur
int main(int argc, char* argv[])
{
//XCharBuffer *poBuffer = new XCharBuffer(0);
XCharBuffer *poBuffer = new XCharBuffer(32);
poBuffer->append("toto");
std::cout << poBuffer->toCharArray() << " - "
<< (int)poBuffer->getValueSize() << " - "
<< (int)poBuffer->getBufferSize() << std::endl;
poBuffer->append(" et pis tata");
std::cout << poBuffer->toCharArray() << " - "
<< (int)poBuffer->getValueSize() << " - "
<< (int)poBuffer->getBufferSize() << std::endl;
poBuffer->pack();
std::cout << poBuffer->toCharArray() << " - "
<< (int)poBuffer->getValueSize() << " - "
<< (int)poBuffer->getBufferSize() << std::endl;
delete poBuffer;
return 0;
}