|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
23.12.2012, 00:41 | #1 |
Пользователь
Регистрация: 16.01.2011
Сообщений: 18
|
Некорректная работа класса
функция length() не работает внутри копирующего конструктора, некорректно работает оператор +
Код:
|
23.12.2012, 01:34 | #2 |
Участник клуба
Регистрация: 15.07.2008
Сообщений: 1,933
|
У Вас в operator+ не вычисляется k для _new. То есть оно остаётся равным нулю.
|
23.12.2012, 01:37 | #3 |
Пользователь
Регистрация: 16.01.2011
Сообщений: 18
|
Я это знаю, поэтому пока никак не использую k в программе, проблема никак не в k
|
23.12.2012, 01:58 | #4 |
Участник клуба
Регистрация: 15.07.2008
Сообщений: 1,933
|
k здесь имеет непосредственное отношение к Вашей проблеме, взгляните
Код:
Код:
Код:
Последний раз редактировалось netrino; 23.12.2012 в 02:02. |
23.12.2012, 02:02 | #5 |
Пользователь
Регистрация: 16.01.2011
Сообщений: 18
|
Блин, как сразу не дошло, спасибо большое
|
23.12.2012, 02:04 | #6 |
Пользователь
Регистрация: 16.01.2011
Сообщений: 18
|
функция length() работет некорректно даже в таком случае:
Код:
|
23.12.2012, 02:17 | #7 |
Участник клуба
Регистрация: 15.07.2008
Сообщений: 1,933
|
А у Вас массив недостаточных размеров для используемых индексов (так как массив размером 19, то максимальный индекс - 18). Измените размер массива на 20. По всей видимости, init y, вылезая за пределы массива m, затирает первое поле (int k) переменного x.
Надо заметить, что Ваш копирующий конструктор излишен в данном случае, стандартный справится ничуть не хуже (даже лучше). Тем не менее, если впоследствии планируется добавить под управление экземпляра класса внешние данные (например, выделенные в куче), то помимо копирующего конструктора необходимо также определить копирующее присваивание Код:
Последний раз редактировалось netrino; 23.12.2012 в 02:19. |
23.12.2012, 02:31 | #8 |
Пользователь
Регистрация: 16.01.2011
Сообщений: 18
|
Спасибо, всё работает
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Некорректная работа программы | Starget-93 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 0 | 18.11.2012 06:08 |
Некорректная работа сайта. | t1umxo | PHP | 5 | 09.10.2012 13:17 |
Некорректная работа кода [C++] | madmaniac | Помощь студентам | 1 | 10.03.2012 15:50 |
Некорректная работа WPF | _-Re@l-_ | WPF, UWP, WinRT, XAML | 0 | 19.04.2011 16:05 |
Некорректная работа с файлами | Gapro | Общие вопросы Delphi | 13 | 24.03.2011 08:39 |