Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Divergence
7 / 7 / 0
Регистрация: 19.06.2013
Сообщений: 174
#1

Что лучше использовать для работы со строками класс wstring или wchar_t напрямую? - C++

22.06.2014, 02:32. Просмотров 762. Ответов 9
Метки нет (Все метки)

Всем привет!
Мучает меня один вопрос: как грамотнее и безопаснее работать со строками:
1) Создавать экземпляр класса wstring и работать с ним.
2) Создавать строку при помощи wchar_t, затем использовать функции класса wstring для работы с ней.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.06.2014, 02:32     Что лучше использовать для работы со строками класс wstring или wchar_t напрямую?
Посмотрите здесь:

Из wchar_t* в wstring или в string - C++
Как перевести из wchar_t* в wstring или в string ? Почему столько геморроя со строками... Есть функция, которая принимает wstring и...

Что лучше использовать для строк? Массив char или же string? - C++
Только не давно начал изучать с++, подскажите что лучше использовать для строк? Массив char или же string? И могу я ограничить себя...

Что лучше использовать: string или char[]? - C++
Ребят, я только начинаю учить c++. Подскажите что лучше использовать string или же char

Что лучше использовать, матрицу или списки? - C++
Задание: Дан граф, определить является ли он связным. Подскажите пожалуйста, при выполнении этого задания лучше использовать матрицу...

Что лучше использовать, #define или typedef? - C++
Вот привожу пример программы. Здесь можно и с #define сделать и с typedef. Программа в любом случае будет прекрасно работать. Там что же...

Что лучше использовать vector или массив - C++
Что лучше использовать и когда vector или массив ?

Реализовать класс для работы со строками - C++
Пожалуйста помогите с заданием Необходимо реализовать класс TString. В процессе выполнения задания нельзя пользоваться классом...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
22.06.2014, 05:10     Что лучше использовать для работы со строками класс wstring или wchar_t напрямую? #2
Цитата Сообщение от Divergence Посмотреть сообщение
2) Создавать строку при помощи wchar_t,
Строку какую? Покажите процесс.
Divergence
7 / 7 / 0
Регистрация: 19.06.2013
Сообщений: 174
22.06.2014, 05:19  [ТС]     Что лучше использовать для работы со строками класс wstring или wchar_t напрямую? #3
C++
1
2
wchar_t* stdStr = new wchar_t[30];
stdStr = L "OMG!";
Хотя, у меня подозрение, что выделение памяти тут не имеет вообще никакого смысла и создает утечку...
alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
22.06.2014, 05:37     Что лучше использовать для работы со строками класс wstring или wchar_t напрямую? #4
Цитата Сообщение от Divergence Посмотреть сообщение
wchar_t* stdStr = new wchar_t[30];
Это же не wstring, поэтому как с этой строкой можно:
Цитата Сообщение от Divergence Посмотреть сообщение
использовать функции класса wstring для работы с ней
?

Добавлено через 2 минуты
Цитата Сообщение от Divergence Посмотреть сообщение
Хотя, у меня подозрение, что выделение памяти тут не имеет вообще никакого смысла и создает утечку...
Выделение памяти тут имеет смысл, если сделать копирование строки в эту память, а не присваивать указателю адрес строкового литерала.
Divergence
7 / 7 / 0
Регистрация: 19.06.2013
Сообщений: 174
22.06.2014, 05:39  [ТС]     Что лучше использовать для работы со строками класс wstring или wchar_t напрямую? #5
Цитата Сообщение от alsav22 Посмотреть сообщение
Это же не wstring, поэтому как с этой строкой можно:
Видимо у меня есть некоторые дыры в понимании что есть заголовочные файлы.
Я думал, что там хранится описывающий класс с функциями и их можно использовать не только внутри экземпляра класса, но и со сторонними объектами.
alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
22.06.2014, 05:46     Что лучше использовать для работы со строками класс wstring или wchar_t напрямую? #6
Цитата Сообщение от Divergence Посмотреть сообщение
Видимо у меня есть некоторые дыры в понимании что есть заголовочные файлы.
Зоголовочные файлы тут при чём? Есть класс, есть методы класса. Нестатические методы класса вызываются объектами класса. Поэтому, чтобы использовать такие методы, нужны объекты класса.
Divergence
7 / 7 / 0
Регистрация: 19.06.2013
Сообщений: 174
22.06.2014, 07:16  [ТС]     Что лучше использовать для работы со строками класс wstring или wchar_t напрямую? #7
Цитата Сообщение от alsav22 Посмотреть сообщение
Заголовочные файлы тут при чём? Есть класс, есть методы класса. Нестатические методы класса вызываются объектами класса. Поэтому, чтобы использовать такие методы, нужны объекты класса.
Как Вы думаете, все таки лучше пользоваться wchar_t напрямую, или же создавать объект класса и работать с ним?
Tulosba
:)
Эксперт С++
4392 / 3235 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
22.06.2014, 08:39     Что лучше использовать для работы со строками класс wstring или wchar_t напрямую? #8
Divergence, для начала покажите нормально использование двух предложенных вариантов, а то Вы какую-то ахинею несете.
Voivoid
673 / 276 / 12
Регистрация: 31.03.2013
Сообщений: 1,339
22.06.2014, 11:45     Что лучше использовать для работы со строками класс wstring или wchar_t напрямую? #9
std::wstring str = L"Hello, World!";

всё, больше ничего изобретать не надо
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.06.2014, 16:40     Что лучше использовать для работы со строками класс wstring или wchar_t напрямую?
Еще ссылки по теме:

Класс для работы со строками CString - C++
Написать текстовый редактор с параметрами 1. Вставка в начало 2. Копирование строк 3. Поиск в строке Мне непонятна одна вещь: как...

Что лучше использовать: псевдокод или блок-схемы? - C++
Я вроде в какой то книжке читал, что лучше использовать псевдокод. Так ли это?

Разработать класс String для работы со строками - C++
Разработать программу, демонстрирующую работу с производным от приведенного в примере класса. Класс должен включать три метода работы со...

Написать класс для эффективной работы со строками - C++
Написать класс для эффективной работы со строками, что позволяет форматировать и сравнивать строки, хранить в строках числовые значения и...

Создайте класс String для работы со строками - C++
народ помогите пожалуйста, классы тяжко даются:( 1. код корректен? 2. не могу сообразить как написать функцию bool hasSubstring # ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
22.06.2014, 16:40     Что лучше использовать для работы со строками класс wstring или wchar_t напрямую? #10
Цитата Сообщение от Divergence Посмотреть сообщение
создавать объект класса и работать с ним
...
Yandex
Объявления
22.06.2014, 16:40     Что лучше использовать для работы со строками класс wstring или wchar_t напрямую?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru