Re: basic_string::copy - почему без терминатора?
От: uzhas Ниоткуда  
Дата: 29.03.12 08:44
Оценка:
Здравствуйте, ntp, Вы писали:

ntp>Почему?

предположу, что для гибкости и это вписывается в идеологию плюсовых строк
вообще, нулевой терминальный символ есть только в си-строках
в std::string нет такого элемента (пробегитесь от begin до end и вы не найдете нулевого символа в простых строках)
дополнительно есть возможность хранить в std::string нулевые символы
  std::string s(10, '\0'); // строка их 10 нулевых символов

в си-строках терминальный ноль имеет определенную семантику, по нему можно определить длину строки. а в std::string этот символ не несет семантики, а в c_str() его добавляют лишь для обратной совместимости с си
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.