![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
MFSham |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 28.8.2005 Где: Беларусь, Гродно Репутация: 1 Всего: 3 |
Работаю в консольном режиме.
Создаю класс в конструкторе у которого объявляю двумерный динамический массив(квадратная матрица). Там же его и заполняю. Т.к. массив динамический, то имеется и указатель на начало массива. В классе есть процедурка вывода на экран. Далее в main() пытаюсь сделать следующее: создаю 2 квадратные матрицы, вывожу их на экран. Все делается на описанных процедурах в классе. Но, в результате выводится на экран две одинаковые матрицы. Я понимаю, что я неправильно работаю с указателями. Вроде до вызова процедуры Show() указатели различные, но после входа в нее они становятся одинаковыми. Подскажите где ошибка. Вот собственно исходник:
--------------------
Без ветра трава неподвижна. Без программ компьютеры бесполезны. |
|||
|
||||
chipset |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4071 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 27 Всего: 164 |
Я если честно не вижу проблемы с указателями. По-моему что-то неправильно с randomize
![]() --------------------
|
|||
|
||||
DeadSoul |
|
||||||
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1217 Регистрация: 25.9.2005 Где: Москва Репутация: 2 Всего: 11 |
Скорее всего так. Замени следующую строку
на
Еще у тебя утечки памяти. У данных new
нету delete -------------------- Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". Бьем спамеров их же оружием. Пусть весь спам сыпется им [email protected] |
||||||
|
|||||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 4 Всего: 67 |
убираешь оттуда рандомайз и всё будет ок
![]() -------------------- СУВ, Partizan. |
|||
|
||||
BreakPointMAN |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 725 Регистрация: 15.9.2004 Где: Saratov Репутация: 14 Всего: 24 |
Порнография. -------------------- "Разруха не в клозетах, а в головах." © Ф.Ф. Преображенский (М.Булгаков, "Собачье сердце") |
|||
|
||||
DeadSoul |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1217 Регистрация: 25.9.2005 Где: Москва Репутация: 2 Всего: 11 |
Согласен. MFSham, при удаление объекта( у тебя оно происходит автоматически, т.к. объект создан на стеке ) деструктор вызывается автоматически. "Руками" его вызывать не надо Добавлено @ 01:51 насчет randomize-а: Убери его отуда где он написан и
Мой вариант будет работать, но преподаватель не поверит, что ты это сам сделал -------------------- Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". Бьем спамеров их же оружием. Пусть весь спам сыпется им [email protected] |
|||
|
||||
chipset |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4071 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 27 Всего: 164 |
Кстати это не очень красиво. Надо инициализировать генератор случайных чисел чем-то вроде текущего значения таймера. --------------------
|
|||
|
||||
BreakPointMAN |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 725 Регистрация: 15.9.2004 Где: Saratov Репутация: 14 Всего: 24 |
randomize(); в начало программы и о'кей. Я более чем уверен, что в этой функции используются показания системного таймера при инициализации генератора случайных чисел. Это сообщение отредактировал(а) BreakPointMAN - 8.2.2006, 03:08 -------------------- "Разруха не в клозетах, а в головах." © Ф.Ф. Преображенский (М.Булгаков, "Собачье сердце") |
|||
|
||||
MFSham |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 28.8.2005 Где: Беларусь, Гродно Репутация: 1 Всего: 3 |
Большое спасибо ВСЕМ. А то я ломал голову с указателями.
![]()
--------------------
Без ветра трава неподвижна. Без программ компьютеры бесполезны. |
||||
|
|||||
MAKCim |
|
||||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
кроме случая
-------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
||||
|
|||||
DeadSoul |
|
||||
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1217 Регистрация: 25.9.2005 Где: Москва Репутация: 2 Всего: 11 |
Как видишь у randomize() не параметров. Передать туда нечего. Лично я использую srand( текущее время с точностью до милисекунды преобразованное в int )
Ты сможешь описать для чего применяется слово static? Просто вопрос был крайне похож на лабу очередного студента ![]() MAKCim, и сколько раз ты делал такое в реальных проектах? -------------------- Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". Бьем спамеров их же оружием. Пусть весь спам сыпется им [email protected] |
||||
|
|||||
MFSham |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 28.8.2005 Где: Беларусь, Гродно Репутация: 1 Всего: 3 |
Да, я знаю что означает слово static ![]() --------------------
Без ветра трава неподвижна. Без программ компьютеры бесполезны. |
|||
|
||||
DeadSoul |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1217 Регистрация: 25.9.2005 Где: Москва Репутация: 2 Всего: 11 |
Поехали. Для чего применяется слово ключевое слово static в С++ -------------------- Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". Бьем спамеров их же оружием. Пусть весь спам сыпется им [email protected] |
|||
|
||||
chipset |
|
||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4071 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 27 Всего: 164 |
--------------------
|
||||
|
|||||
mo3art |
|
||||||
![]() Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 29.9.2005 Где: пло не та 3 емля Репутация: нет Всего: нет |
в этом случае у тебя будет утечка памяти.... при использовании оператора delete, который чистит память, деструктор вызовется автоматически. ЗЫ - механизм с конструктором/деструктором был вложен в средства языка как раз для того, чтобы инициализация и разрушение объектов происходили ВСЕГДА АВТОМАТИЧЕСКИ. |
||||||
|
|||||||
Daevaorn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2155 Регистрация: 29.11.2004 Где: Москва Репутация: 51 Всего: 70 |
||||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |