![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| qweasd |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 28.10.2006 Репутация: нет Всего: нет |
Я делаю вот так:
Выдает такой вот еррор:
как это исправить и заставить правильно работать??? Это сообщение отредактировал(а) qweasd - 14.2.2008, 16:31 |
||||
|
|||||
| Daevaorn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2155 Регистрация: 29.11.2004 Где: Москва Репутация: 51 Всего: 70 |
Если уже используете STL, то используйте до конца. Т.е. для строк std::wstring. Тогда не будет проблем с контейнерами.
|
|||
|
||||
| qweasd |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 28.10.2006 Репутация: нет Всего: нет |
Это да!!! Так понятно, и тут никаких проблем не возникает!!!
Но хотелось бы заполнять WCHAR'ом. |
|||
|
||||
| Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 41 Всего: 154 |
у массивов нет конструктора по умолчанию, вместо него используй указатели, или создай структуру содержащую массив и напиши для нее конструктор...
счастливой отладки)) |
|||
|
||||
| qweasd |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 28.10.2006 Репутация: нет Всего: нет |
Мдаа. Это уж точно счастливой отладки)))
Лучше уж я потом буду вытягивать CString'и и переводить их в WCHAR. Что скажете??? Это сообщение отредактировал(а) qweasd - 14.2.2008, 17:36 |
|||
|
||||
| Alek86 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
вот уж велосипед... ничего не напоминает? ;) и помойму со массивами чаров в шаблонах были проблемы из-за того, что у них внутренняя привязка, чтоли. и решались они весьма извращенными способами... так что лучше уж std::wstring Добавлено через 2 минуты и 45 секунд лучше всего пользоваться однородными инструментами если пользуешь MFC, то у него и карты свои были, вроде (вектора точно) |
|||
|
||||
| qweasd |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 28.10.2006 Репутация: нет Всего: нет |
В конце концов решил сделать вот так:
|
|||
|
||||
| Daevaorn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2155 Регистрация: 29.11.2004 Где: Москва Репутация: 51 Всего: 70 |
||||
|
||||
| Alek86 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
qweasd, ужос, чесно слово
пока не поздно. поменяй на wstring не поменяешь - сам потом материться буш (на себя) |
|||
|
||||
| qweasd |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 28.10.2006 Репутация: нет Всего: нет |
а чё? Вроде все норм работет!
Это сообщение отредактировал(а) qweasd - 15.2.2008, 11:31 |
|||
|
||||
| Alek86 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
тогда закрывай тему
поживешь-увидишь |
|||
|
||||
| qweasd |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 28.10.2006 Репутация: нет Всего: нет |
Хороший ответ! А главное содержательный
Я так понимаю вы намекаете на утечку памяти? Это сообщение отредактировал(а) qweasd - 15.2.2008, 12:00 |
|||
|
||||
| qweasd |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 28.10.2006 Репутация: нет Всего: нет |
Ну допустим тут я могу использовать стандартные классы!
А как тогда быть если нужно создавать вектор или мап своими руками написаных класов??? |
|||
|
||||
| Mayk |
|
||||||
![]() ^аВаТаР^ сообщение>> ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 45 Всего: 134 |
при попытке перезаписи может не хорошо кончится. пример раз.
и вот тут возможны варианты: 1) m_vBrowsers.back().p1[1] == 'W' в том случае если компилятор захотел и склеил две L"qwe" в одну, дабы не занимать память. [ не йа придумал -fmerge-constants] и положил их в область памяти, доступную для записи 2) SIGSEGV, если положил в область памяти куда записывать низзя 3) ожидаемое p1[1] == 'w', p2[1] == 'W'. пример два
foo завершается, локальный массив рушится к чертям. что в m_vBrowsers --- нипаняятна (с) но ой как навряд ли то что нам нужно Пример три
ой! какой-то умник положил массив на 4 wchar'а, а обращается к [9]-ому. и мы черт-а с два узнаем что к [9]-ому обращаццо низзя sigsegv здесь лучший вариант. все эти три обходятся std::wstring'ом. Это сообщение отредактировал(а) Mayk - 15.2.2008, 12:36 -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
||||||
|
|||||||
| qweasd |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 28.10.2006 Репутация: нет Всего: нет |
Большое спасибо!
Буду набиратся опыта |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |