Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Ошибка при вызове деструктора - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Переписать с Java на C++ программу "шифр одиночной перестановки по ключу" http://www.cyberforum.ru/cpp-beginners/thread1813808.html
Написал код программы "шифр одиночной перестановки по ключу", на Java, а мне нужно программа на с++, но с сишками не дружу. код: /* * To change this license header, choose License Headers in...
C++ Создайте класс Student, который будет содержать информацию о студенте Создайте класс Student, который будет содержать информацию о студенте. С помощью механизма наследования, реализуйте класс Aspirant (аспирант - студент, который готовится к защите кандидатской работы)... http://www.cyberforum.ru/cpp-beginners/thread1813800.html
C++ Переписать файл так, чтобы термины выделялись прописными буквами
Помогите, пожалуйста. Задали написать вот такую программу "В текстовом файле специальные термины выделены кавычками. Переписать файл так, чтобы термины выделялись прописными буквами." А я в...
задача про МКАД C++
Ребята,помогите решить задачу: Длина Московской кольцевой автомобильной дороги —109 километров. Байкер Вася стартует с нулевого километра МКАД и едет со скоростью v километров в час. На какой...
C++ Программа вылетает при объявлении переменной класса http://www.cyberforum.ru/cpp-beginners/thread1813745.html
При создании переменной класса tree программа вылетает. Не понимаю, в чём дело. Что я не так делаю? Класс tree - бинарное дерево #include <iostream> using namespace std;
C++ Как реализовать переход на следующую итерацию внешнего цикла из вложенного? Есть ли способ завершить или продолжить внешний цикл из вложенного? Пример : for (i = 0; i < 10; i++) { for (j = 0; j < 10; j++) { if (что то) //выполнить continue для внешнего цикла ( сделать... подробнее

Показать сообщение отдельно
Croessmah
Эксперт CЭксперт С++
13508 / 7666 / 866
Регистрация: 27.09.2012
Сообщений: 18,858
Записей в блоге: 3
Завершенные тесты: 1
26.09.2016, 10:21
Цитата Сообщение от Mr_Sorry Посмотреть сообщение
Суть не в явном вызове
Именно в нем суть. Деструктор будет вызван при уничтожении объекта.
Так что Вы получите два вызова деструктора.

К тому же
C++
1
2
3
4
5
6
7
8
9
10
11
    if (!(vec = new double*[rows]))
    {
        cerr << "Невозможно разместить вектор в памяти";
        exit(ERR_EXIT);
    }
//...
        if (!(vec[i] = new double[colls]))
        {
            cerr << "Невозможно разместить вектор в памяти";
            exit(ERR_EXIT);
        }
условия эти абсолютно бесполезные,
т.к. new кинет исключение в случае ошибки, а не вернет ноль.
Да и не факт что new вообще будет знать о том, что памяти нет
и программа упадет при обращении непосредственно к памяти.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru