wxWidgets Глава 1. Вспомогательные классы. Часть 1. Вывод в консоль и строки

И так начнем изучение wxWidgets с вспомогательных классов не относящихся к GUI.

Для начала мы должны научиться выводить в консоль текстовое сообщение средствами данной библиотеки. Для этого есть метод wxPuts. Для работы текстом не GUI мы текст оборачиваем в хелпер wxT(). Таким образом не будет проблем с кодировкой и не английскими словами. Но чтоб все это работало мы должны подключить wxString и wxPutc через #include.

А затем мы пишем вывод в консоль

В результате получаем во такой результат

Операции со строками wxString

wxString — Класс, отвечающий за отображение символьных строк.

Есть несколько преимуществ wxString перед std::string:

  • Эффективность: поскольку wxWidgets 3.0 wxString использует std::string(в режиме UTF8 в Linux, Unix и macOS) или std::wstring(в режиме UTF16 в Windows) по умолчанию для внутреннего хранения своего содержимого. Таким образом, wxString унаследует характеристики производительности от std::string.
  • Совместимость: этот класс пытается объединить почти полную совместимость со старым классом wxWidgets 1.xx wxString , некоторую память о классе CString MFC и 90% функциональности std::string класса.
  • Богатый набор функций: некоторые функции, присутствующие в wxString , очень полезны, но отсутствуют в большинстве других строковых классов: например, wxString :: AfterFirst , wxString :: BeforeLast , wxString :: Printf . Конечно, также поддерживаются все стандартные строковые операции.
  • wxString поддерживает Unicode: он позволяет легко преобразовывать строки в ANSI и Unicodeи обратно.
  • Используется wxWidgets: И, конечно же, этот класс используется повсюду внутри wxWidgets, поэтому нет потери производительности, которая могла бы возникнуть в результате преобразования объектов любого другого строкового класса (включая std::string) в wxString внутри wxWidgets.

Разберем краткий список из того что он умеет.

Для начала сделаем простую операцию сложим строки
Метод Printf() используется для форматирования строк.
В следующем примере мы проверяем строку на наличие в ней другой строки. Для этого используется метод Contains() . Этот метод я лично часто использую.

Далее периведу коротко еще нектороые возможности

  • Метод Len() возвращает количество символов в строке.
  • Методы MakeLower() и MakeUpper() преобразуют все символы строки в строчные и прописные соответственно.

На этом список не ограничивается. Более детально можно узнать о классе wxString в документации тут и тут