![]() |
|
Модераторы: bsa |
![]()
|
|
| EKoshelev |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 509 Регистрация: 1.9.2004 Репутация: нет Всего: нет |
Здравствуйте.
У меня такая проблема. Первый раз пытаюсь писать свой opertator=. Вот его текст (хотя, полагаю, он не важен):
При попытке присвоить один объект другому:
в левом (m_mainBuffer) остаётся то, что было до присвоения, хотя при трассировке по коду оператора к последней строке (return *resBuffer) все свойства принимают нужные значения. Если пытаться вызывать этот оператор так:
то на этапе компиляции выводится ошибка: «error C2352: 'CParamBuffer::operator =' : illegal call of non-static member function». На сколько я понял, речь идёт о том, что какой-то статический метод пытается вызвать не статический. Где там статический и какой нестатический он вызывает - не ясно. Пытался комментировать код оператора - результат тот же. -------------------- Вежливым и адекватным предлагаю общаться на "ты". |
||||||
|
|||||||
| newbee |
|
|||
![]() Бревно ![]() ![]() Профиль Группа: Участник Сообщений: 703 Регистрация: 24.8.2011 Репутация: 3 Всего: 19 |
1. Оператор= должен возвращать не копию себя, а самого себя. 2. Оператору= желательно давать сохранять не копию присваемого объекта, а сам этот объект. Добавлено через 10 секунд Это то, что сразу в глаза бросилось. -------------------- You're face to face With man who sold the world |
|||
|
||||
| bsa |
|
||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
нет. просто кто-то не знает синтаксиса языка:
|
||||||
|
|||||||
| EKoshelev |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 509 Регистрация: 1.9.2004 Репутация: нет Всего: нет |
Ага. Догнал )) Заработало после того как удалил resBuffer. Советы newbee тоже учел. Всё работает, спасибо. -------------------- Вежливым и адекватным предлагаю общаться на "ты". |
|||
|
||||
![]()
|
| Правила форума "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. |