Поделиться через


Класс CStringT

Этот класс представляет объект CStringT.

template< typename BaseType, class StringTraits >
class CStringT : 
public CSimpleStringT<   BaseType,   _CSTRING_IMPL_::_MFCDLLTraitsCheck<      BaseType,      StringTraits   >   ::c_bIsMFCDLLTraits>

Параметры

  • BaseType
    Тип символа строкового класса.Может принимать следующие значения:

    • char (для символьных строк ANSI).

    • wchar_t (для символьных строк в юникоде).

    • TCHAR (и для символьных строк ANSI и юникод).

  • StringTraits
    Определяет, является ли поддержка библиотеки времени выполнения c (CRT) необходимостей класса строки и, где строковые ресурсы найдены.Может принимать следующие значения:

    • Wchar_t strtraitatl< | char | TCHAR, wchar_t chtraitscrt< | char | TCHAR > >

      Класс требует поддержки и поиска CRT для строк ресурса в указанном модуле m_hInstResource (членом класса модуля приложения).

    • Wchar_t strtraitatl< | char | TCHAR, wchar_t chtraitsos< | char | TCHAR > >

      Класс не требует поддержки и поиска CRT для строк ресурса в указанном модуле m_hInstResource (членом класса модуля приложения).

    • Wchar_t strtraitmfc< | char | TCHAR, wchar_t chtraitscrt< | char | TCHAR > >

      Класс требует поддержки и поиска CRT для строк ресурса с помощью стандартного алгоритма поиска MFC.

    • Wchar_t strtraitmfc< | char | TCHAR, wchar_t chtraitsos< | char | TCHAR > >

      Класс не требует поддержки и поиска CRT для строк ресурса с помощью стандартного алгоритма поиска MFC.

Члены

5bzxfsea.collapse_all(ru-ru,VS.110).gifОткрытые конструкторы

Имя

Описание

CStringT::CStringT

Создает объект CStringT различными способами.

CStringT::~CStringT

Удаляет объект CStringT.

5bzxfsea.collapse_all(ru-ru,VS.110).gifОткрытые методы

Имя

Описание

CStringT::AllocSysString

Выбирает BSTR из данных CStringT.

CStringT::AnsiToOem

Выполняет преобразование из в- размещения кодировка ANSI в символ OEM - набор.

CStringT::AppendFormat

Форматированные данные добавитями к существующему CStringT объект.

CStringT::Collate

Сравнивает 2 строк (регистр, сведения о языковой стандарт- определенной польз).

CStringT::CollateNoCase

Сравнивает 2 строк (с учетом регистра, сведения о языковой стандарт- определенной польз).

CStringT::Compare

Сравнивает 2 строк (с учетом регистра).

CStringT::CompareNoCase

Сравнивает 2 строк (регистр символов не учитывается).

CStringT::Delete

Удаляет знак или знаки из строки.

CStringT::Find

Находит символ или подстрока в рамках более крупной строки.

CStringT::FindOneOf

Находит первый соответствующий символ из набора.

CStringT::Format

Форматирует строки по мере sprintf.

CStringT::FormatMessage

Форматирует строки сообщения.

CStringT::FormatMessageV

Форматирует строка сообщения, используя список аргументов переменной.

CStringT::FormatV

Форматирует строки, используя список аргументов переменной.

CStringT::GetEnvironmentVariable

Задает строку в значение указанной переменной среды.

CStringT::Insert

Вставляет один знак или подстроку на заданный индекс в строке.

CStringT::Left

Извлекает левая часть строки.

CStringT::LoadString

Загружает существующий объект CStringT из ресурса Windows.

CStringT::MakeLower

Преобразование всех символов в данной строке в нижний регистр символов.

CStringT::MakeReverse

Изменяет строку.

CStringT::MakeUpper

Преобразование всех символов в данной строке в символы верхнего регистра.

CStringT::Mid

Извлекает средняя часть строки.

CStringT::OemToAnsi

Выполняет преобразование в- размещения из символов OEM - установка в набор символов ANSI.

CStringT::Remove

Удаляет отображаемый символов из строки.

CStringT::Replace

Указывает replaces символы с другими символами.

CStringT::ReverseFind

Находит символ в более крупной строки; начинается с конца.

CStringT::Right

Извлекает правая часть строки.

CStringT::SetSysString

Задает существующий объект BSTR данными из объекта CStringT.

CStringT::SpanExcluding

Извлекает символов из строки, начиная с первого символа, в наборе символов, определенных pszCharSet.

CStringT::SpanIncluding

Извлекает подстроку, которая содержит только символы в наборе.

CStringT::Tokenize

Токены извлечь указанные в строке целевого объекта.

CStringT::Trim

Усекает все начальные и конечные символы пробела из строки.

CStringT::TrimLeft

Trim, который привел знаками пробела из строки.

CStringT::TrimRight

Усекаются замыкающие знаки пробела из строки.

5bzxfsea.collapse_all(ru-ru,VS.110).gifОператоры

CStringT::operator =

Присвоить новое значение объекта CStringT.

CStringT::operator +

Сцепляет 2 строк или знаков и строк.

CStringT::operator +=

Сцепляет новую строку в конец существующей строки.

== CStringT::operator

Определяет, логически равны 2 строк.

CStringT::operator! =

Определяет, 2 строк логическое не равны.

CStringT::operator <

Определяет, является ли строка в левой части оператора, чем в строке справа.

CStringT::operator >

Определяет, является ли строка в левой части оператора больше строки справа.

<= CStringT::operator

Определяет, является ли строка в левой части оператора, меньше или равно строке справа.

>= CStringT::operator

Определяет, является ли строка в левой части оператора больше или равно строке справа.

Заметки

CStringT наследуется от класс CSimpleStringT.Расширенные функции, например упорядочения и манипуляция знака, поиск, реализованы CStringT.

ПримечаниеПримечание

Объекты CStringT обеспечивают возможность возникновения исключения.Это происходит, когда не хватает памяти для выполнения объекта CStringT какой-либо причине.

Объект CStringT состоит из последовательности знаков переменной длины.CStringT предоставляет функции и операторы, используя синтаксис, подобный этому из основного.Соединение и операторы сравнения вместе с упрощенным элемента управления памятью, что объекты CStringT более удобным использовать чем массивы обычного символа.

ПримечаниеПримечание

Хотя можно создать экземпляры CStringT, которые содержат внедренные нуль-символы рекомендуется к ней.Вызов методов и операторов, основанных на объектах CStringT, которые содержат внедренные нуль-символы может дать непредусмотренных инструкций.

С использованием различных сочетаний параметров BaseType и StringTraits объекты CStringT могут поступать на следующие типы, которые являются стандартными библиотеками библиотеки ATL.

При использовании в приложении библиотеки ATL:

CString, CStringA и CStringW экспортироватьы из библиотеки DLL MFC (MFC90.DLL) никогда из библиотеки DLL пользователя.Это делается для предотвращения CStringT от умножает заданный.

ПримечаниеПримечание

Если обнаружил ошибки компоновщика экспортирования CString- производный класс из библиотеки DLL расширения MFC в Visual C++ .NET 2002 и примененные решение, как описано в статье базы знаний "связывание ошибки при импорте CString- Производные классы" (Q309801), необходимо удалить код временного решения, так как это было зафиксировано в Visual C++ .NET 2003.Статьи базы знаний можно найти на компакт-диске библиотеки MSDN или по ссылке https://support.microsoft.com/.

Следующие строковые типы доступны в пределах MFC-, работающих приложений:

Тип CStringT

Объявление

CStringA

Строка типа символов ANSI с поддержкой CRT.

CStringW

Строка типа в юникоде с поддержкой CRT.

CString

Типы и ANSI и в юникоде с поддержкой CRT.

Следующие строковые типы доступных в проектах, в которых указан ATL_CSTRING_NO_CRT:

Тип CStringT

Объявление

CAtlStringA

Строка типа символов ANSI без поддержки CRT.

CAtlStringW

Строка символов юникода типа без поддержки CRT.

CAtlString

Типы и ANSI и символ юникода без поддержки CRT.

Следующие строковые типы доступных в проектах, в которых ATL_CSTRING_NO_CRT не указано.

Тип CStringT

Объявление

CAtlStringA

Строка типа символов ANSI с поддержкой CRT.

CAtlStringW

Строка типа в юникоде с поддержкой CRT.

CAtlString

Типы и ANSI и в юникоде с поддержкой CRT.

Объекты CString также имеют следующие характеристики:

  • Объекты CStringT могут увеличиваться в результате операций соединения.

  • Объекты CStringT следовать семантике "значения". Подумайте объекта CStringT как фактическая строка, а не как указатель на строку.

  • Можно свободно заменить объекты CStringT для аргументов функции PCXSTR.

  • Пользовательское управление памятью для буферов строки.Дополнительные сведения см. в разделе управление памятью и CStringT.

CStringT предопределило типы

Поскольку CStringT использует аргумент шаблона, чтобы указать поддерживаемый тип символов (или wchar_t или char), типы параметров метода может осложнить временем.Для упрощения этой проблемы набор стандартных типов определяется и используется в класс CStringT.В следующей таблице перечислены различные типы:

Имя

Описание

XCHAR

Один знак (или wchar_t или char) с тем же типом символов в виде объекта CStringT.

YCHAR

Один знак (или wchar_t или char) с противоположным типом символов в виде объекта CStringT.

PXSTR

Является указателем на символьную строку (или wchar_t или char) с тем же типом символов в виде объекта CStringT.

PYSTR

Является указателем на символьную строку (или wchar_t или char) с противоположным типом символов в виде объекта CStringT.

PCXSTR

Является указателем на символьную строку const (или wchar_t или char) с тем же типом символов в виде объекта CStringT.

PCYSTR

Является указателем на символьную строку const (или wchar_t или char) с противоположным типом символов в виде объекта CStringT.

ПримечаниеПримечание

Закодируйте, что ранее, используемые недокументированные методы CString (например, AssignCopy) должны быть заменены с кодом, используются следующие методы CStringT документированные (например, GetBuffer или ReleaseBuffer).Эти методы наследуются от CSimpleStringT.

Иерархия наследования

CSimpleStringT

CStringT

Требования

Header

Использование

cstringt.h

Объект строки - только MFC

atlstr.h

Строковый объект, не относящихся к MFC

См. также

Ссылки

Диаграмма иерархии

Класс CSimpleStringT

Другие ресурсы

ATL/MFC совместно, используемые классы