RecursiveSort::RecursiveSort(int myArray[], int first, int arraySize)
{
int smallest = first, j;
if (smallest < arraySize)
{
smallest = first;
for (j=first+1; j<arraySize; j++)
{
if (myArray[j] < myArray[smallest])
{
smallest = j;
}
}
swap(myArray[first], myArray[smallest]);
first++;
RecursiveSort::RecursiveSort(myArray, first, arraySize);
}
};
и в моем main (); я буду вызывать сортировку RecursiveSort (myArray, 0, arraySize);
Переполнение стека происходит, когда arraySize> 4000, и происходит сбой программы. Можно ли вызвать деструкторы классов где-нибудь, чтобы предотвратить переполнение стека? Я попытался использовать «релиз» вместо «отладка» (свойства проекта> менеджер конфигурации> раскрывающееся меню конфигурации). Однако это вызывает другие проблемы, когда я пытаюсь интегрировать библиотеку «TimeStamp_Lib.lib», которая используется для измерения того, сколько времени занимает сортировка.
Любые советы / предложения будут с благодарностью, спасибо!