¿Cómo leer un archivo en una matriz de caracteres sin firmar desde std :: ifstream?

Así que normalmente hago cosas como:

<code>    std::ifstream stream;
    int buff_length = 8192;
    boost::shared_array<char> buffer( new char[buff_length]);
    stream.open( path.string().c_str(), std::ios_base::binary);
    while (stream)
    {
            stream.read(buffer.get(), buff_length);
            //boost::asio::write(*socket, boost::asio::buffer(buffer.get(), stream.gcount()));
    }
    stream.close();
</code>

Me pregunto cómo leer enunsigned char buffer (boost::shared_array<unsigned char> buffer( new unsigned char[buff_length]);)

Respuestas a la pregunta(1)

Su respuesta a la pregunta