Чтобы лучше понять природу кла
Автор admin
Понедельник, 11 мая 2009 11:32
Чтобы лучше понять природу класса string, стоит взглянуть на шаблон basic_string: tempiate. class allocator – allocator > class basic_string; В главе 5 шаблоны будут рассматриваться более подробно (гораздо подробнее, чем в главе 16 первого тома). А пока просто обратите внимание, что тип string создается специализацией шаблона basic_string по типу char. Внутри объявления basic_string<> следующая строка сообщает, что поведение класса, созданного на базе шаблона basic_string, задается классом, созданным на базе шаблона char_traits<>: class traits – char_traits. Таким образом, на базе шаблона basic_string<> создаются строковые классы, которые помимо char могут работать с другими типами (например, с символами в расширенной кодировке). При этом шаблон char_traits<> определяет порядок сортировки в различных кодировках при помощи функций eq() (равно), пе() (не равно) и lt() (меньше). От этих функций зависит работа функций сравнения строк basic_string<>. Теперь понятно, почему класс string не содержит функций, не учитывающих регистр символов: это не вх
Комментарии закрыты.
Последние комментарии