Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.03.2012, 18:01   #11
Agmentium78
 
Регистрация: 18.03.2012
Сообщений: 7
По умолчанию

Цитата:
Сообщение от Rififi Посмотреть сообщение
Agmentium78

Все ошибки в программе связаны с незнанием базовых вещей C++ и неумелом обращении с динамическими данными.

повсеместно используется char* вместо const char* (хотя само по себе использование новичком указателей в C++, как правило, уже означает что код можно в помойку)

tmp = realloc(0);
tmp[0] = '\0';

выделяешь память размером в 0 байт и тут же пишешь в несуществующую область
отсутствует пере-определенный конструктор копирования, оператор присваивания, что является обязательным при наличии в классе raw указателей.

дальше смотреть не обязательно, и так все понятно...

ошибки такого рода возникают от незнания теории, поэтому лучший способ избежать их - усесться за учебники
Ну смотрите, realloc() это функция в классе MyString, она выделяет +1 байт как раз для нулевого байта.

Конструктор копирования переопределён. Оператор присваивания не используется, вообще я в курсе что его надо переопределять.

Момент с char * и const char* мне не ясен, зачем мне const если я меняю значение этой переменной.
Agmentium78 вне форума Ответить с цитированием
Старый 29.03.2012, 22:37   #12
Agmentium78
 
Регистрация: 18.03.2012
Сообщений: 7
По умолчанию

Короче если кому-то интересно.

Дело было в том, что когда функция mystr_dbg() получает только что созданный объект, указатель на строку в нём является нулевым указателем. Она пытается его вывести, и получается такая вот ошибка. С самим классом все нормально.

Знали бы вы сколько времени я на это потратил
Agmentium78 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
DBGrid конкретная ячейка Niklan БД в Delphi 6 24.01.2013 07:31
Nero - ошибка драйвера DMA. ошибка CRC NecRoMat Софт 5 09.05.2012 01:29
Ошибка run-time Error 1004 общая ошибка ODBC kaval88 Microsoft Office Excel 0 27.02.2011 20:20
Ошибка в коде, ошибка в css или это проблема с совместимостью с браузерами? ankris HTML и CSS 5 23.11.2010 16:58
Это ошибка Delphi или моя ошибка??? bloodeagle Общие вопросы Delphi 3 12.11.2009 15:26