Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
191 / 52 / 19
Регистрация: 18.02.2013
Сообщений: 508
Записей в блоге: 9

Ошибка, связанная с памятью

05.02.2015, 12:21. Показов 989. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую.
Есть класс :
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
class Parsing
{
    private:
        unsigned int connect_count; // сколько раз отправляли запрос
    public:
        void ConnectCount(); // увеличиваем кол-во обращений
        int ConnectCountReturn(); // возвращаем количество коннектов
        Parsing(); // задаем начальные данные
        ~Parsing(); // удаляем данные
};
 
Parsing::Parsing()
{
    connect_count = 0;
}
 
Parsing::~Parsing()
{
    connect_count = 0;
}
 
void Parsing::ConnectCount()
{
    ++connect_count;
}
 
int Parsing::ConnectCountReturn()
{
    return connect_count;
}
При создании объектов класса и их использовании получаю следующую ошибку:

Code
1
First chance exception at $004037FE. Exception class $C0000005 with message 'access violation at 0x004037fe: write of address 0x50308650'. Process Is.exe (6204)
Компилятор указывает на строку ++connect_count;

Инициализирую объекты так:
C++
1
2
3
4
5
Parsing **c = new Parsing*[H];
for(iter = 0; iter < H ; iter++)
{
    c[iter] = new Parsing[1];
}
Использую так:
C++
1
c[iter]->ConnectCount();
При этом,если объект один, то все работает отлично :
C++
1
2
3
4
5
    Parsing *c = new Parsing();
    c->ConnectCount();
    c->ConnectCount();
    c->ConnectCount();
    Edit3->Text = c->ConnectCountReturn();
Подскажите, пожалуйста, в чем может быть ошибка.
Миниатюры
Ошибка, связанная с памятью  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.02.2015, 12:21
Ответы с готовыми решениями:

Ошибка, связанная с памятью, в блоке Try catch
Ругается на память. try { if(pObject-&gt;empty())//проверяет или не пустой файл ...

Ошибка связанная с директорией
#include &lt;stdio.h&gt; #include &lt;vcl.h&gt; #pragma hdrstop #include &quot;LabForm10.h&quot; ...

Динамический массив. Ошибка, связанная с памятью
Всем привет. Подскажите, пожалуйста, где я делаю ошибку. Я выхожу за границы массива, только не могу понять, в чем дело. #include...

8
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33376 / 21500 / 8236
Регистрация: 22.10.2011
Сообщений: 36,896
Записей в блоге: 11
05.02.2015, 12:35
Собственно, зачем Parsing[1], если тебе надо в цикле всего навсего создать один объект, а не массив из одного объекта?
C++
1
2
3
4
5
Parsing **c = new Parsing*[H];
for(iter = 0; iter < H ; iter++)
{
    c[iter] = new Parsing();
}
0
191 / 52 / 19
Регистрация: 18.02.2013
Сообщений: 508
Записей в блоге: 9
05.02.2015, 14:15  [ТС]
C++
1
c[iter] = new Parsing();
Так же вылетает с данной ошибкой.
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33376 / 21500 / 8236
Регистрация: 22.10.2011
Сообщений: 36,896
Записей в блоге: 11
05.02.2015, 14:27
Не воспроизводится. Пробуй на чистом проекте, только инициализацию и попытку обращения. Заодно проверь iter, действительно ли он в допустимых границах (от 0 до H-1)...
0
120 / 142 / 46
Регистрация: 31.10.2014
Сообщений: 721
Записей в блоге: 1
05.02.2015, 15:17
Обычный выход за пределы массива
0
191 / 52 / 19
Регистрация: 18.02.2013
Сообщений: 508
Записей в блоге: 9
05.02.2015, 16:14  [ТС]
Странно! Все работает.
В чем же тогда проблема?
Вложения
Тип файла: zip new project.zip (9.70 Мб, 7 просмотров)
0
 Аватар для BRcr
4043 / 2333 / 292
Регистрация: 03.02.2011
Сообщений: 5,066
Записей в блоге: 10
06.02.2015, 16:02
Gdasar, судя по коду в теме, у тебя двумерный массив используется в смысле одномерного - только первый столбик, грубо говоря. Наверняка где-то берешь указатель с массива неправильно.
0
191 / 52 / 19
Регистрация: 18.02.2013
Сообщений: 508
Записей в блоге: 9
08.02.2015, 11:28  [ТС]
Я чуть-чуть в замешательстве!
Один и тот же код, не работает в старом проекте, но замечательно пашет в новом.
С чем это может быть связанно?
И как справляться с такими проблемами?
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33376 / 21500 / 8236
Регистрация: 22.10.2011
Сообщений: 36,896
Записей в блоге: 11
08.02.2015, 11:51
Искать проблемы в старом проекте, не связанные с этим кодом. Другой участок кода может успешно писать что-нибудь, вылезая за границы отведенных массивов, и портя при этом данные, с которыми работает указанный код. В новом проекте никто ничего никуда не пишет, поэтому все работает...
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.02.2015, 11:51
Помогаю со студенческими работами здесь

Ошибка связанная с MV C++
Помогите пожалуста. Эта ошибка вылетает постоянно. Что делать? (Прикрепил скрин)

Ошибка связанная со списком
Есть класс Globals using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace...

не убивается ошибка связанная с БД
не убивается ошибка связанная с БД. Ребят решил реализовать проверку на ошибки при коннекте к БД, реализовал так: try ...

Ошибка связанная с mysqlQuery
Новичок в веб-програмировании.Данный скрипт должен регистрировать пользователя.Он выполняет свою задачу,но та часть где проверяется есть ли...

Ошибка связанная с гетч
#include &lt;iostream&gt; #include &lt;locale&gt; #include &lt;conio.h&gt; using namespace std; int MIN(int a, int b) { int min; if (a...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru