Dealing with resource closure when rethrowing an exception
It seems that your code would benefit dramatically from use of RAII. To illustrate, let's assume the existence of an HTTPConnection class that opens an appropriate connection in its constructor and closes it at destruction. The code would look more like the following:

const string HTTPopotamus::GET(void) {
    HTTPConnection conn(/*connection parameters here*/);

    conn.sendRequest(/*request parameters here*/);
    conn.waitForResponse(HTTP_REQUEST_TIMEOUT);

    return this-&gt;readData(hRequest);
}


This approach is more elegant and clear and explains itself with no need for comments. Any exception thrown, such as exceptions that represent a failed connection or a timeout event would be propagated to the caller while the HTTPConnection object would still be destroyed properly.