std::basic_string::data
| const CharT* data() const; |
||
Возвращает указатель на лежащий в основе строки массив, выступающий хранилищем символов.
Если empty() возвращает false, указатель будет таким, что диапазон [data(); data() + size()) является действительным и значения в нем соответствуют значениям, хранящимся в строке. Если empty() возвращает true, указатель не является нулевым и поэтому не должен быть разыменован. (до C++11)
Указатель будет таким, что диапазон [data(); data() + size()] является действительным и его значения соответствуют значениям, хранящимся в строке (включая дополнительный нулевой символ), даже если empty() возвращает true. (начиная с C++11)
Содержание |
[править] Заметки
Запись в массив символов возвращенных data вызовет неопределенное поведение.
Указатель полученный с помощью data() не должен считаться действительным после любой неконстантной операции со строкой.
Начиная с С++11 data() и c_str() выполняют одну и ту же функцию.
[править] Параметры
(Нет)
[править] Возвращаемое значение
Указатель на лежащий в основе строки массив, такой, что data()[i] == operator[](i) для каждого i в [0, size()). (до C++11)
Указатель на лежащий в основе строки массив, такой, что data() + i == &operator[](i) для каждого i в [0, size()]. (начиная с C++11)
[править] Сложность
Константная
[править] Исключения
[править] См. также
| (C++11) |
получение первого символа (public функция-член) |
| (C++11) |
получение последнего символа (public функция-член) |
| возвращает немодифицируемый массив символов С, содержащий символы строки (public функция-член) | |