Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Клуб программистов > Обсуждение статей
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 12.02.2019, 17:05   #11
Alex11223
Модератор
Заслуженный модератор
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 18,139
Репутация: 3501

icq: 512-765
skype: alexp.frl
По умолчанию

Цитата:
Сообщение от MihalNik Посмотреть сообщение
Для этого с самого начала существуют локальные подпрограммы и with, которым всегда можно настроить текущее пространство имен)
И чем это поможет? Я про освобождение памяти говорил, в любом случае придется в try finally все оборачивать, ну и чтобы не вкладывать их много раз приходится все объекты создавать в начале функции и уничтожать в конце.
А вызов там подпрограммы или просто перечисление всех объектов как-то мало на что-либо влияет.
Цитата:
Сообщение от MihalNik Посмотреть сообщение
никогда не переносился наивной копипастой С++ в Делфи
ну да, это скорее немного улучшенный С89 )
Alex11223 на форуме   Ответить с цитированием
Старый 12.02.2019, 17:18   #12
MihalNik
Модератор
Заслуженный модератор
 
Регистрация: 27.11.2012
Сообщений: 3,958
Репутация: 1557
По умолчанию

Цитата:
в любом случае придется в try finally все оборачивать, ну и чтобы не вкладывать их много раз приходится все объекты создавать в начале функции и уничтожать в конце.
Нет. См. #5 и #7.
__________________
Благими намерениями устлана дорога на programmersforum.ru

Последний раз редактировалось MihalNik; 12.02.2019 в 17:24.
MihalNik вне форума   Ответить с цитированием
Старый 13.02.2019, 07:03   #13
Pavia
Лис
Профессионал
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 1,729
Репутация: 1946
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
С того что интерфейсный объект это таблица указателей на код, а не на данные. По этой причине ваш код даже близко не умный указатель, а всего лишь недоразумение с утечкой данных.
При присвоении объекта интерфейсному объекту в него записывается указатели на методы и при выходи из функции эти указатели освобождаются. А объект который вы создали так и продолжает висеть в памяти, так как это данные.

Существует около 5 способов как интерфейс можно превратить в умный указатель, но каждый из них имеет свои недостатки начиная отсутсвия переносимости между паскалем и дельфи, и между виндоусом и линуксом.
__________________
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .
Pavia на форуме   Ответить с цитированием
Старый 23.04.2019, 07:42   #14
Rik
Форумчанин
 
Аватар для Rik
 
Регистрация: 28.07.2007
Адрес: Урал
Сообщений: 357
Репутация: 277
По умолчанию

Цитата:
Сообщение от Alar Посмотреть сообщение
Хочу обсудить эту статью, так как сам давно не программирую на Delphi, по причине того что виндос хп был дырой, и перешёл на убунту, а там всё уже не про делфи.

Не ужели у Delphi, у Паскаля, всё так плохо?

Вот сама статья которую я прочитал, я скопирую в цитаты только выводы



http://streletzcoder.ru/pochemu-ya-p...sat-na-delphi/

Автор статьи форумчанин Streletz
У меня есть собственные лицензии на Delphi до XE включительно, дальше обновляться не стал, ушел на FPC+Lazarus, кроме этого избавился от сторонних коммерческих компонент и теперь содержание средств разработки обходится мне в 0р, ну разве что время приходится тратить на поддержание собственных компонент. Что я могу сказать, в техническом плане у паскаля все отлично, проекты масштаба предприятия работают на Windows, Linux, ARM Linux, как появилась возможность клиенты стали пересаживаться на Linux, я бы сказал в техническом плане стало интереснее, не прибит гвоздями к одной системе, я вообще добился того, что бизнес приложения работают в гетерогенной среде без перекомпиляции, не важно что у пользователя на рабочем месте Windows или Linux, единожды разработанное приложение запустится без перекомпиляции (а-ля Java). Народ даже Web сервисы на FPC шлепает, тут поле деятельности весьма велико. Проблемы у Паскаля не в техническом плане, это уж точно.
__________________
http://www.visual-t.ru

Последний раз редактировалось Rik; 23.04.2019 в 07:49.
Rik вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Почему под виндой не удобно программировать на С++ Namira Общие вопросы C/C++ 39 29.04.2017 20:04
Перестал запускаться Delphi XE8 Sibedir Общие вопросы Delphi 4 26.11.2016 16:56
Часть Странички в delphi код перестал работать! Fahman Общие вопросы Delphi 0 02.12.2013 19:11
Перестал работать таймер в Delphi 2010 Shouldercannon Общие вопросы Delphi 4 10.07.2012 22:54
Начать программировать на Delphi xak2 Свободное общение 25 18.08.2008 07:03


08:48.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru