>>90
std::string a;
aに対して何かしらの操作が行われなければ内部バッファのメモリ領域も変更されないでしょ。
たとえば非constな操作によって別のメモリ領域に移動する場合はあるけど
constな操作(c_str)のようなものなら別のメモリ空間が再割り当てされる心配もない。