Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
 Аватар для Holsteng
48 / 11 / 2
Регистрация: 26.03.2012
Сообщений: 246

Конвертирование в wstring&

30.08.2012, 15:14. Показов 1238. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет! Не могу понять почему невозможно конвертировать из wchar_t в wstring&
Вызов метода
C++
1
client -> CompareTwoString( iteratorclient -> nameclient, positionclient ,lenghtname );
функция

C++
1
2
3
4
bool CompareTwoString( wstring &one, wstring &two, int position )
{
    //something
}
C++
1
 'Clients::CompareTwoString' : cannot convert parameter 1 from 'wchar_t [30]' to 'std::wstring &'
Заранее спасибо!

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

C++
1
char str [] = "abc";
третим элементом будет /0 (компилятор добавляет), а когда мы создаем вот так

C++
1
string str = "abc";
Будет ли /0?.

Спасибо
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.08.2012, 15:14
Ответы с готовыми решениями:

Объясните, что означает wstring input = L""; и wstring output = L""; ?
Непонятно особенно L"".

Ошибка: multiple definition of `void std::swap<A>(A&amp;, A&amp;)
Хочу специализировать swap для своего класса. Получаю ошибку. Вот код:#ifndef A_H #define A_H #include &lt;string&gt; class A ...

Конвертирование цвета из &H80000009& в Long
Как конвертировать идентификатор цвета из такого вида: &amp;H80000009&amp; в формат Long? Заранее спасибо.

10
 Аватар для Пaтрик
442 / 410 / 132
Регистрация: 21.01.2012
Сообщений: 976
30.08.2012, 15:26
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <string>
 
bool CompareTwoString(const std::wstring &one, const std::wstring &two)
{
   return one > two;
}
 
int main()
{
   wchar_t *str1 = L"asd";
   wchar_t *str2 = L"bsd";
   std::cout << std::boolalpha << CompareTwoString(std::wstring(str1), std::wstring(str2));   
}
Добавлено через 1 минуту
Цитата Сообщение от Holsteng Посмотреть сообщение
Будет ли /0?.
Скорее зависит от реализации.
1
 Аватар для Holsteng
48 / 11 / 2
Регистрация: 26.03.2012
Сообщений: 246
30.08.2012, 15:28  [ТС]
Пaтрик, странно, инициализировать string wchar_t можно, а вот передать по ссылке нельзя?
0
 Аватар для Пaтрик
442 / 410 / 132
Регистрация: 21.01.2012
Сообщений: 976
30.08.2012, 15:32
А что не по ссылке передается?
1
 Аватар для Holsteng
48 / 11 / 2
Регистрация: 26.03.2012
Сообщений: 246
30.08.2012, 15:36  [ТС]
А-а-а! Имя массива есть указатель на первый элемент, виноват.

Получается, что я хочу привести указатель к ссылке?
0
 Аватар для Kastaneda
5232 / 3205 / 362
Регистрация: 12.12.2009
Сообщений: 8,143
Записей в блоге: 2
30.08.2012, 15:51
Можно, просто ссылки должны быть константными.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <string>
 
bool CompareTwoString(const std::wstring &one, const std::wstring &two)
{
   return one == two;
}
 
int main()
{
   wchar_t *str1 = L"asd";
   wchar_t *str2 = L"asd";
   std::cout << std::boolalpha << CompareTwoString(str1, str2);   
}
Добавлено через 2 минуты
Цитата Сообщение от Holsteng Посмотреть сообщение
Получается, что я хочу привести указатель к ссылке?
Нет, будет вызван неявно конструктор std::wstring(wchar_t*)
1
 Аватар для Holsteng
48 / 11 / 2
Регистрация: 26.03.2012
Сообщений: 246
30.08.2012, 15:51  [ТС]
Спасибо всем большое, сколько тонкостей!
0
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
30.08.2012, 17:19
Цитата Сообщение от Holsteng Посмотреть сообщение
Будет ли /0?.
C++
1
2
3
4
string str1 = "abc";
cout << "str1.size() = " << str1.size() << endl;
char str2 [] = "abc";
cout << "sizeof(str2) = " << sizeof(str2) << endl;
1
 Аватар для edward_jonson
163 / 163 / 68
Регистрация: 23.02.2011
Сообщений: 392
30.08.2012, 21:15
Kastaneda, Почему так сильно влияет "константность" ссылки на преобразование типов (или что там)?
0
DU
1500 / 1146 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
30.08.2012, 22:14
в случае, когда функции передается не тот тип, который требуется и если из передаваемого типа может быть сконструирован объект нужного типа, компилятор так и делает, создается временный объект и далее в функцию передается ссылка на временный объект. но, в случае неконстантной ссылки предполагается, что внутри функции объект будет модифицироваться. не важно, модифицируется он на самом деле или нет. так вот, в посчитали, что нет смысла модифицировать временные объекты. ведь их модифицированное значение никому не достанется. ну и запретили. а вот передача по константной ссылке как-бы запрещает модификацию. поэтому в этом случае все компилируется.
2
 Аватар для Holsteng
48 / 11 / 2
Регистрация: 26.03.2012
Сообщений: 246
31.08.2012, 09:57  [ТС]
Спасибо, хорошее объяснение!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
31.08.2012, 09:57
Помогаю со студенческими работами здесь

query='SELECT * FROM resume WHERE ' & ''' & RecSet('place')& ''' & '=' & '''& s_loc &''' & - что не так?
упростил для краткости запрос. в чем ошибка? RecSet - это коннекшн. query='SELECT * FROM resume WHERE ' &amp; ''' &amp;...

error '80020009' &Icirc;&oslash;&egrave;&aacute;&ecirc;&agrave;. /lalala/profile.asp, line 28
При простейшем и сто раз работавшем скрипте, вылетает ошибка! след. содержания error '80020009' ...

Помогите найти драйвера для pci\ven_8086&DEV_266E&SUBSYS_A002145&REV_05\3&13C0B0C5&0&F2
pci\ven_8086&amp;DEV_266E&amp;SUBSYS_A002145&amp;REV_05\3&amp;13C0B0C5&amp;0&amp;F2 Мультимедиа аудиоконтроллер помогите плз найти...

Нужен драйвера, код PCI\VEN_1039&DEV_7012&SUBSYS_0C98105B&REV_A0\3&B1BFB68&0&17
всем привет !! уменя нет звука нужен драйвер код PCI\VEN_1039&amp;DEV_7012&amp;SUBSYS_0C98105B&amp;REV_A0\3&amp;B1BFB68&amp;0&amp;17 скачал прогу их много ...

Мультимедиа контролер PCI\VEN_14F1&DEV_8800&SUBSYS_EA3D14F1&REV_05\4&25700A26&0&3020
Помогите пожалуйста найти драйвер на мультимедиа видеоконтролер ...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru