>>672 一時オブジェクトを渡す可能性があるならconst必須
void hoge(const std::string& str);

...

hoge("this generates temporary obj.");

とかいう話ではなくて?