Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

c++ strings

Name: Anonymous 2007-03-21 6:35 ID:QUPvos6j

I'm not sure about how allocation and cleanup works with c++ strings. Does this leak memory?


string get_filename(char * path)
{
    string file_name = path;
    int pos = file_name.find_last_of('\\');
    if (pos!=string::npos)
    {
        file_name = file_name.substr(pos+1); // what happens to the memory here?
    }
    return file_name;
}

Name: Anonymous 2007-03-21 13:40 ID:QUPvos6j

>>7

Am I correct in assuming that "string get_filename(string path)" would create a temporary copy of the string when it is called, whereas "string get_filename(const string &path)" would just pass a pointer to the string parameter, thus preventing an unnecessary copy?

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List