lee la documentacion de lo que devuelve el c_str() y vas a ver porque es..
por lo pronto, te digo que devuelve un const char*

On Nov 14, 2007 12:55 PM, Javier Persico <[EMAIL PROTECTED]> wrote:

> Buenos Dias,
>
> Estoy armando una clase en C++ y uno de sus atributos es un char*,
> necesito tener un constructor que reciba un std::string y construya la clase
> y le asigne el valor del parametro al char*.
>
> El constructor es el siguiente:
>
> Binario::Binario(std::string sBinario)
> {
>  unsigned int numBytes = sBinario.length();
>  this->cBinario = new char[numBytes];
>  this->nBits = (numBytes * 8);
>  this->limpiarBytes(0);
>
> *// Presiento que el lio se arma aca!!!!!!*
>  this->cBinario = (char*)sBinario.c_str();
> }
>
> El problema surge con el destructor porque me da error cuando quiere
> liberar la memoria:
>
> Binario::~Binario()
> {
>  delete []this->cBinario;
> }
>
> ¿Alguna ayuda?.
>
> Saludos!.
>
> Nota: Estoy compilando con Visual C++
>
> _______________________________________________
> Lista de correo Programacion.
> [email protected]
> http://listas.fi.uba.ar/mailman/listinfo/programacion
>
>


-- 
Dario Griffo
_______________________________________________
Lista de correo Programacion.
[email protected]
http://listas.fi.uba.ar/mailman/listinfo/programacion

Responder a