![]() |
|
Модераторы: bsa |
![]()
|
|
| Sergio |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 843 Регистрация: 28.7.2006 Где: Solar System-> Earth Репутация: нет Всего: 1 |
Привет. Как првильно передать и присвоить у функцию указатель?
Инициализация должна бить только так: (без new)
Это сообщение отредактировал(а) Sergio - 22.7.2009, 18:11 |
||||
|
|||||
| Albor |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 589 Регистрация: 28.2.2009 Репутация: 2 Всего: 9 |
Ну так объяви в функции указатель, а не объект. Или я чего-то не понял. То что ты написал не верно, так нельзя.
|
|||
|
||||
| ISergeyN |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 59 Регистрация: 11.10.2008 Где: Україна Репутация: 2 Всего: 2 |
это?
|
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 79 Всего: 250 |
Имхо, в вопросе не хватает данных, чтоб на него можно было ответить, не имея телепатических способностей. Не плохо было бы если бы его переформулировали.. |
|||
|
||||
| and277 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 59 Регистрация: 9.4.2009 Репутация: нет Всего: нет |
Точно сказал. Ты передаешь в функцию посредством аргумента указатель на объект aBuilder. Дык все же bBuilder должен иметь значение или указывать на объект aBuilder? Копирование указателей или присваивание значений нужно? Это сообщение отредактировал(а) and277 - 22.7.2009, 19:24 |
|||
|
||||
| Sergio |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 843 Регистрация: 28.7.2006 Где: Solar System-> Earth Репутация: нет Всего: 1 |
ISergeyN, вот передаю как и говориш (2 ошибки)
|
||||
|
|||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 79 Всего: 250 |
Sergio, прочитайте внимательно сообщение компилятора, он Вам прямым текстом кричит, где искать ошибку
Добавлено через 23 секунды передача по указателю тут не при чем. |
|||
|
||||
| Albor |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 589 Регистрация: 28.2.2009 Репутация: 2 Всего: 9 |
Sergio, ты пытаешься скопировать объект (а не указатель) СListCtrl, а оператором = этого сделать нельзя. Копировать нужно примерно так:
За синтаксис не ручаюсь, функции могут называться по другому. Но идея понятна? Нужно в цикле пройтись по всем айтемам list и добавить их в m_lstServers. Это сообщение отредактировал(а) Albor - 23.7.2009, 07:58 |
|||
|
||||
| Sergio |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 843 Регистрация: 28.7.2006 Где: Solar System-> Earth Репутация: нет Всего: 1 |
Albor, мне не скопировать надо а передать указатель.
|
|||
|
||||
| zim22 |
|
||||
|
depict1 ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2682 Регистрация: 15.1.2009 Где: Украина Репутация: 29 Всего: 69 |
можно создать тип "указатель на функцию" и присвоить его объекту адрес нужной функции.
|
||||
|
|||||
| Albor |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 589 Регистрация: 28.2.2009 Репутация: 2 Всего: 9 |
Указатель в функцию ты уже передал - это, в твоём коде, list. Если хочешь получить его копию, то делаешь так:
либо, если в объекте класса
Но это не очень хорошо. Здесь нужна гарантия того, что объект, на который указывает list, не будет уничтожен до тех пор, пока используется m_pLstServers. Это сообщение отредактировал(а) Albor - 23.7.2009, 12:36 |
||||
|
|||||
| Sergio |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 843 Регистрация: 28.7.2006 Где: Solar System-> Earth Репутация: нет Всего: 1 |
Вообщем крєш у меня. Делаю как Ви советуете:
Не понимаю єтого, поскольку обєкт еще живет когда я его использую |
|||
|
||||
| hsilgos |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 64 Регистрация: 26.4.2009 Репутация: 1 Всего: 2 |
Может, всё таки не крешь, а ассерт? CListCtrl у вас создан? Или просто объявлен? |
|||
|
||||
| Albor |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 589 Регистрация: 28.2.2009 Репутация: 2 Всего: 9 |
Sergio, hsilgos прав на 100 процентов! CListCtrl наследуется от СWnd, то есть это оконный класс и для создания объекта нужно вызвать функцию Create. В данном случае сделано объявление, но объектом ещё пользоваться нельзя. Если ты пытаешься заполнить список, находящийся на форме, то свяжи с ним переменную и её адрес передай в функцию. Это сообщение отредактировал(а) Albor - 24.7.2009, 09:16 |
|||
|
||||
| Sergio |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 843 Регистрация: 28.7.2006 Где: Solar System-> Earth Репутация: нет Всего: 1 |
Нужно контрол пустишку в котором держать дание. Чтоби он ни к каком окну не привязивался. Вот как делаю. Все равно крєш:
Помогите пожалуйста. Робота горит Это сообщение отредактировал(а) Sergio - 24.7.2009, 11:44 |
|||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |