Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Переполнение стека 
:(
    Опции темы
Garmahis
Дата 19.3.2006, 14:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 254
Регистрация: 23.12.2004

Репутация: нет
Всего: 4



При заполнение массива
Код

type
TStrAr=array of string;
TStrArAr=array of array of string;
TIntArAr=array of array of integer;
TStrArArAr=array of array of array of string;
TBoolAr=array of Boolean;
TDatArAr=array of array of TDate;
TPapers=record
UserN:string;
MachPapers:Integer;
MachNumbers:Integer;
MachPages:Integer;
MachUsers:Integer;
Paper:TStrAr;
PaperID:TStrAr;
User:TStrArAr;
CanEdit:TBoolAr;
PaperN:TStrArAr;
PaperNID:TStrArAr;
PaperD:TDatArAr;
MachPage:TIntArAr;
Line:TStrArArAr;
end;

Инициализируются массивы вот так:
Код

Papers.MachPapers:=20;
Papers.MachNumbers:=47;
Papers.MachPages:=68;
Papers.MachUsers:=37;
SetLength(Papers.Paper, Papers.MachPapers);
SetLength(Papers.PaperID ,Papers.MachPapers);
SetLength(Papers.User ,Papers.MachPapers, Papers.MachUsers);
SetLength(Papers.CanEdit ,Papers.MachPapers);
SetLength(Papers.PaperN ,Papers.MachPapers, Papers.MachNumbers);
SetLength(Papers.PaperNID ,Papers.MachPapers, Papers.MachNumbers);
SetLength(Papers.PaperD ,Papers.MachPapers, Papers.MachNumbers);
SetLength(Papers.MachPage ,Papers.MachPapers, Papers.MachNumbers);
SetLength(Papers.Line ,Papers.MachPapers, Papers.MachNumbers, Papers.MachPages);

Выводиться сообщение Stack Overflow. Вобщем стек переполнен. Подскажите пожалуйста как бороться? Я не понимаю причём тут стек...

Это сообщение отредактировал(а) Garmahis - 19.3.2006, 14:36
PM   Вверх
Fin
Дата 19.3.2006, 17:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дракон->Спать();
**


Профиль
Группа: Участник
Сообщений: 687
Регистрация: 4.1.2006

Репутация: нет
Всего: 10



Ты объявляеш переменные не динамически. Все такие переменные распологаются в стеке. Тут два выхода
1) Уведичить стэк (но при таких аппетитах не поможет)
2) Создавать все динамически в Куче (размер данных до 2 гигабайт)

Это сообщение отредактировал(а) Fin - 19.3.2006, 17:20


--------------------
Пролетал мимо.
PM MAIL   Вверх
Garmahis
Дата 19.3.2006, 20:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 254
Регистрация: 23.12.2004

Репутация: нет
Всего: 4



Можно подробнее про второй вариант? И почему большие аппетиты? Я по массиву разбираю текстовый фаел весом в 107 кб...
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0699 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.