Veréis, tengo el siguiente código que nos ha dejado el profesor:
Pero no entiendo las líneas que ponen esto:
Podrían decirme cuál es su finalidad? Si no creo mal, podría ser algo de un casting?
Gracias de antemano!
Código (c++) [Seleccionar]
/*
Si el fichero es nuevo, le metemos los datos para la tabla, y la cubeta que nos dicen.
Reservamos memoria para la cubeta.
*/
void ficheroDisperso::crear(string& url, unsigned int tamTabla, unsigned int tamCubeta)
{
if(this->fDisp.is_open())
this->fDisp.close();
if(this->cub.datos == NULL)
delete[] this->cub.datos;
this->fDisp.open(url.c_str(), ios::in | ios::out | ios::binary | ios::trunc);
if(!this->fDisp.is_open())
throw excepciones::fichNoAbierto();
this->tamTabla=tamTabla;
this->tamCubeta=tamCubeta;
cub.datos = new Pueblo[this->tamCubeta];
this->fDisp.write(reinterpret_cast<char *>(&this->tamTabla), sizeof(unsigned int));
this->fDisp.write(reinterpret_cast<char *>(&this->tamCubeta), sizeof(unsigned int));
for (unsigned int i=0; i <tamTabla; ++i)
{
this->fDisp.write(reinterpret_cast<char *>(&cub.tam), sizeof(unsigned int));
this->fDisp.write(reinterpret_cast<char *>(cub.datos), sizeof(Pueblo)*tamCubeta);
}
}
Pero no entiendo las líneas que ponen esto:
Código (c++) [Seleccionar]
this->fDisp.write(reinterpret_cast<char *>(&this->tamTabla), sizeof(unsigned int));
this->fDisp.write(reinterpret_cast<char *>(&this->tamCubeta), sizeof(unsigned int));
Podrían decirme cuál es su finalidad? Si no creo mal, podría ser algo de un casting?
Gracias de antemano!
