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

Зачем фигурные скобки в деструкторе? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Массив объектов разных производных классов http://www.cyberforum.ru/cpp-beginners/thread359198.html
Задача такая: базовый класс - фигура, производные классы - круг, треугольник и т.п. Пользователь выбирает, какие фигуры будут на экране и в каком порядке создаются. Для них цвет, радиус, угол поворота и т.п. 1. Нужно создать очередь объектов. - это первый вопрос. Можно ли создать очередь объектов базового класса, а при инициализации как-то им "говорить", к какому из дочерних классов они...
C++ Удаление элемента вектора в цикле. Как правильно удалить элемент вектора в цикле? remove_if не подходит. Примерно вот такая структура программы: struct Ex { char value; uint32 timer; }; std::vector<Ex> List; http://www.cyberforum.ru/cpp-beginners/thread359190.html
Задача 1567. SMS-спам и проблема двух решений C++
Собственно задача: http://acm.timus.ru/problem.aspx?space=1&num=1567 Проблема в том, что моё решение со switch'ем даёт правильные результаты, в том числе правильно считает пример, но он-лайн проверку не проходит. Есть аналогичное решение, через if'ы, и оно проходит проверку. Вопрос - в чём разница? где моя версия неправильно считает?( P.S. Альтернативный вариант решения мне известен, но...
Работа с файлами, Алгоритм не могу продумать. C++
1. Дан текстовый файл, фразы в котором отделены друг от друга точками, а слова – пробелами и знаками препинания. Расставить фразы в этом файле в порядке увеличения количества слов в каждой из них. 2. Компоненты типизированного файла – массивы, состоящие из 6 вещественных чисел. Вывести на экран тот из них, сумма отрицательных элементов которого больше. Компоненты типизированного файла – целые...
C++ Интересное поведение cin.getline(); http://www.cyberforum.ru/cpp-beginners/thread359184.html
Доброго времени суток! Я не устаю терроризировать форум своими тупыми вопросами, но для этого он и создан. На этот раз у меня проблема с методом getline(); Имеется код: switch(menuNumber){ case 1: cout << "Input name of the first player: "; cin.getline(namePlayer, sizeof(namePlayer)); ttt.changePlayerName(namePlayer, 0); cout << "Input name of the second player: ";
C++ Проблема с очисткой памяти Здравствуйте! Помогите пожалуйста исправить проблему с очисткой памяти в void memfree(). Заранее спасибо. #include "stdafx.h" #include <windows.h> #include "resource.h" #include <string> #define MAXPOINTS 1000 int ko,key1=0; int kolreb; подробнее

Показать сообщение отдельно
Bers
Заблокирован
02.10.2011, 03:08     Зачем фигурные скобки в деструкторе?
Цитата Сообщение от hoot Посмотреть сообщение
я вот на этом зацыклился(
в с++ конструировать функцию можно двумя способами:

1 Способ. Сначала создаётся прототип функции, например: int Foo(аргументы);
Точка с запятой после объявления функции говорит компилятору, что данная сущность
является лишь прототипом, а реальное туловище (определение) функции будит позднее.

2 Способ. Создание функции сразу, без прототипа, например: int Foo(аргументы) {туловище}
В этом случае, компилятор сразу увидит туловище функции, и сможет выделить для неё память
(определить). Туловище может быть и пустым, в этом случае функция будит существовать, но
ничего не будит делать. Например пустой диструктор: ~Rectangle(){}

Поэтому, можно выносить туловища методов класса за пределы его объявления, а можно определять их и внутри объявления. Правильно будит и так, и этак.

Единственное - если метод был определён внутри объявления класса, то компилятор может сделать такой метод inline. Это может увеличить производительность программы, но при этом увеличится размер откомпилированного кода.
 
Текущее время: 04:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru