Hola, la ejecucion de mi programa funciona bien, pero creo que no estoy haciendo bien algun delete.
Por ejemplo yo tengo mi main
int main(){
TPoro c4(4,5,20.35,"YElloW");
cout<<c4<<endl;
return 0;
}
el valgrind  me dice lo siguiente:
==14577== Mismatched free() / delete / delete []
==14577==    at 0x402599A: operator delete(void*) (vg_replace_malloc.c:342)
==14577==    by 0x8049044: TPoro::~TPoro() (TPoro.cpp:151)
==14577==    by 0x8048993: main (tad.cpp:107)
==14577==  Address 0x42c4028 is 0 bytes inside a block of size 7 alloc'd
==14577==    at 0x402630E: operator new[](unsigned int) (vg_replace_malloc.c:268)
==14577==    by 0x8048CE1: TPoro::TPoro(int, int, double, char*) (TPoro.cpp:92)
==14577==    by 0x8048960: main (tad.cpp:10)
==14577== 
==14577== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 17 from 1)
==14577== malloc/free: in use at exit: 0 bytes in 0 blocks.
==14577== malloc/free: 1 allocs, 1 frees, 7 bytes allocated.
==14577== For counts of detected errors, rerun with: -v
==14577== All heap blocks were freed -- no leaks are possible.
yo creo que puede ser en uno de los siguiente metodos
 
TPoro::~TPoro(){
 
    //cout<<"paso al destructor"<<endl;
    x=0;
    y=0;
    volumen=0.0;
    //comprobaré que color es distinto de NULL, para asegurarme y hacer delete
 
    if(color !=NULL){
        delete color;
        color=NULL;
    }
    //color=NULL; //me curo en salud y me aseguro para ponerlo a NULL;
    
    //cout<<"salgo del destructor"<<endl;
 
}
 
TPoro::TPoro(int px,int py,double vol,char *col){
 
    int tam;
 
 
    //cout<<"a la funcion"<<endl;
 
    x=px;
    y=py;
    volumen=vol;
    
    if(col!=NULL){
        color=new char[strlen(col)+1];
    
        //cout<<"COL "<<color<<endl;
 
        if(color==NULL){
            
            return;
        }
 
    //if(color !=NULL){
        //cout<<"llego aqui"<<endl;
        Convertir(col,color);
        //strcpy(color,col);
        //cout<<"salgo?"<<endl;
    //}
    }
    else{
        color=NULL;
        return;
    }
 
    //cout<<"salgo de la funcion"<<endl;
    //cout<<"color "<<color<<endl;
 
}
 
 
 
No libero bien la memoria?
me pueden ayudar?