Почему basic_string :: size () & '_m_string_length' в том же классе, возвращайте ** разные ** значения, хотя size () возC++

Программы на C++. Форум разработчиков
Anonymous
Почему basic_string :: size () & '_m_string_length' в том же классе, возвращайте ** разные ** значения, хотя size () воз

Сообщение Anonymous »

Я хотел увидеть фактическое определение этого размера функции () и lenght () basic_string, потому что в своей книге Бьярн написал, что «strlen ()-это журнал (n) операция
, тогда как String :: size ()-простое чтение». And then I found that, there is '_M_string_length' (declared private at line 156 in bits/basic_string.h)

I made the _M_string_length member public in the class (and commented the private one).

But,

Код: Выделить всё

std::string str="Hello"
std::cout

Подробнее здесь: [url]https://stackoverflow.com/questions/59262691/why-do-basic-stringsize-m-string-length-in-same-class-return-differe[/url]

Вернуться в «C++»