file.exe имеет точку останова в Visual Studio C ++ - PullRequest
0 голосов
/ 28 сентября 2019

Извините, это, должно быть, очень простая ошибка, но я искал ее повсюду, и, похоже, я не могу решить мою проблему, я просто делаю некоторый "массив ввода и вывода" для своего класса ООП, я использую динамическое разрешениедля моего массива, вот мой код, и я знаю, что это только ошибка удаления, другие (создать, вставить, ... отлично работают), большое спасибо всем:

я пробовал delete [] a; delete a также, но это не сработало, я попытался поставить system("pause") сразу после этого (я гуглил это), но тоже нет: ((


void shift_left_array(int *a,int k , int &n, int step = 1) {
    // k : begin position
    // n : end position
    for (int i = k; i < n; i++) {
        *(a + i - 1) = *(a + i); // Shift right array
    }
}

void delete_from_array(int *a, int &n) {
    int k; // delete position
    // shift left, then resize array
    cout << "Which position do you want to delete ? (Type from 0 to " << n - 1 << ") : " << endl;
    cin >> k;

    shift_left_array(a, k + 1, n);
    n--; // resize array

    delete (a + n); // Trigger break point error here
}

int main() {

    int n = 0;
    int *a = new int[n];

    cout << "Insert array size : " << endl;
    cin >> n;

    // Create new array
    create_array(a,n);
    display_array(a,n);
    // Add more value to array (increase array size)
    insert_to_array(a, n);
    display_array(a, n);

    // Delete value from array
    delete_from_array(a,n);
    display_array(a, n);

    // Sort
    bubble_sort(a,n);
    display_array(a, n);
    // Search
    linear_search_array(a, n);
    // Update
    update_array_value(a, n);
    display_array(a, n);

    system("pause");
    return 0;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...