|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
10.11.2015, 15:29 | #1 |
фонатик DELPHI
Форумчанин
Регистрация: 14.01.2008
Сообщений: 714
|
Консультация по объектам
Здравствуйте господа гуру С++
Не буду рассусоливать - сразу вопрос на примере: Каким образом освобождается память под объект А в таком коде Код:
TMyObject - это класс который содержит внутреннее хранилище информации. Метод GetObjectCount наполняет внутреннее хранилище данными, делает определённые вычисление и возвращает число определённых объектов по типу "objecttype" Деструктор очищает всю память но явно не вызывается в функции MyFunction
95% сбоев и ошибок приложений, находится в полу метрах от монитора
Последний раз редактировалось JUDAS; 10.11.2015 в 15:37. |
10.11.2015, 15:36 | #2 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
Функция заканчивается - время жизни объекта проходит и вызывается деструктор.
|
10.11.2015, 15:39 | #3 | |
фонатик DELPHI
Форумчанин
Регистрация: 14.01.2008
Сообщений: 714
|
Цитата:
п.с. уточняю, ибо в Делфи всё что создаётся внутри функции должно обязательно освобождаться (такой принцип программирования), а в С++ вижу всё на самотёке, как и в JavaScript
95% сбоев и ошибок приложений, находится в полу метрах от монитора
|
|
10.11.2015, 16:26 | #4 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
Не на самотеке, а просто чуть синтаксического сахара. В делфи вы и конструктор явно вызываете. Создавайте через new и удаляте delete, если вам так хочется.
|
11.11.2015, 12:09 | #5 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
в С++ есть явное различие как хранятся данные, в стеке или в куче. В Делфи всегда хранятся в куче, потому и надо явно освобождать. В С++ же то что в куче освобождать надо, то что в стеке умрет само. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
12.11.2015, 15:25 | #6 |
фонатик DELPHI
Форумчанин
Регистрация: 14.01.2008
Сообщений: 714
|
Господа, спасибо всем !
Уточняющий вопрос по теме. -------------- Фрагмент кода: Код:
Код:
95% сбоев и ошибок приложений, находится в полу метрах от монитора
|
12.11.2015, 15:30 | #7 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
вообще такой код должен выдавать варнинг. и это плохой код.
ибо передача ссылки на локальную переменную. InitObject можно и в конструкторе делать. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
12.11.2015, 22:30 | #8 | |
фонатик DELPHI
Форумчанин
Регистрация: 14.01.2008
Сообщений: 714
|
Цитата:
1. Как объявить объект класса без использования указателей во так TMyObject A; если конструктор содержит несколько параметров. Веди инициализацию объекта в примере указана "приммитивная", на самом деле идёт настройка внутренних свойств самого класса, открывается (или создаётся файл) и так далее 2. Вопрос немного не в тему В С++ имеется функция типа Format которая содержит плавающее число параметров "...". Вопрос, как мне создать такой же метод в классе Выдаёт вот такое [C++ Error] nuclearcalc.h(157): E2138 Conflicting type modifiers
95% сбоев и ошибок приложений, находится в полу метрах от монитора
Последний раз редактировалось Stilet; 13.11.2015 в 11:10. |
|
13.11.2015, 05:57 | #9 | ||
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
Цитата:
Цитата:
|
||
13.11.2015, 10:12 | #10 |
фонатик DELPHI
Форумчанин
Регистрация: 14.01.2008
Сообщений: 714
|
За первое спасибо, попробую.
По поводу функции с ... Функция то работает, с ней вопросов нет, а вот метод создать не получается. Выдаёт [C++ Error] nuclearcalc.h(157): E2138 Conflicting type modifiers код Код:
95% сбоев и ошибок приложений, находится в полу метрах от монитора
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Обращение к объектам | Sanek_ntsk | Общие вопросы Delphi | 3 | 14.04.2012 18:41 |
пройтись по объектам формы | iliili | Общие вопросы Delphi | 3 | 16.06.2011 14:29 |
Вопросы по объектам | BadProgrammer | Общие вопросы C/C++ | 1 | 20.12.2010 03:34 |
привязка к динамическим объектам | areyoudead | Общие вопросы Delphi | 7 | 04.11.2010 14:15 |
вопрос по объектам на паскале | demonara | Помощь студентам | 7 | 09.09.2009 20:52 |