Willd std :: string sempre será nulo-terminado em C ++ 1
Em uma publicação de 2008 em seu site, Herb Sutter afirma o seguinte:
Existe uma proposta ativa para reforçar ainda mais isso no C ++ 0x e exigir finalização nula e possivelmente proibir implementações de cópia na gravação, por motivos relacionados à simultaneidade. Aqui está o artigo:http: //www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2534.htm. Acho que é provável que uma ou ambas as propostas deste documento sejam adotadas, mas veremos na próxima reunião ou duas.
Sei que o C ++ 11 agora garante que o conteúdo std :: string seja armazenado de forma contígua, mas eles adotaram o que foi dito acima no rascunho fina
Agora será seguro usar algo como&str[0]
?