
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[216.73.216.21] |
![]() |
|
Страницы: (56) « Первая ... 6 7 [8] 9 10 ... 55 56 ( Перейти к последнему сообщению ) |
Сообщ.
#106
,
|
|
|
Вызовутся ли эти деструкторы в случае, если сработает GC и/или вызовется ли GC при выходе из этих scope'ов 146% ? Цитата applegame @ ![]() ![]() scope(exit) writeln("это выполнится при любом выходе из scope (в данном случае - функции)"); scope(success) writeln("это выполнится только при выходе без исключений"); scope(failure) writeln("это выполнится только при выходе по исключению"); |
Сообщ.
#107
,
|
|
|
Сообщ.
#108
,
|
|
|
Эммм... Где? |
Сообщ.
#109
,
|
|
|
Про строки в параметрах шаблонов тебя спросили зачем, а рефлексия во время компиляции вроде как все нравится. Проблема в том, что она легко может появиться в C++ ![]() |
Сообщ.
#110
,
|
|
|
Цитата Wound @ GC не занимается объектами на стеке. Для них вызовутся 146%. Для объектов созданных при помощи new, нет. Они будут жить и после выхода из функции как минимум до тех пор пока в программе есть ссылки на них. После того как все ссылки исчезли, деструктор вызовется, когда GC соблагоизволит прибить данный объект. Это может случиться когда угодно. Поэтому деструктор для классов, как правило бесполезен. Вызовутся ли эти деструкторы в случае, если сработает GC и/или вызовется ли GC при выходе из этих scope'ов 146% ? |
Сообщ.
#111
,
|
|
|
И да, ты мне там писал, что я не ответил про интерфейсы, а я не нашел.
|
![]() |
Сообщ.
#112
,
|
|
Наверное на любом языке можно привести пару примеров, в чем этот язык переплюнет плюсы, так что не очень интересно. Вот если бы D хотя бы в половине случаев однозначно переплевывал плюсы, было бы интересней. =) |
Сообщ.
#113
,
|
|
|
Цитата D_KEY @ Я там привел, два примера, повторю:Про строки в параметрах шаблонов тебя спросили зачем В качестве стратегий: http://dpaste.dzfl.pl/adb455e76a45 В качестве предикатов: http://dpaste.dzfl.pl/30cb1cd23e26 В реальной жизни, это может быть все что угодно, названием функции или просто тэгом. В C++ для этого юзают классы-пустышки, что является ничем иным, как костылем. |
![]() |
Сообщ.
#114
,
|
|
Цитата applegame @ После того как все ссылки исчезли, деструктор вызовется, когда GC соблагоизволит прибить данный объект. Обычно же GC копируют достижимые объекты, а не «прибивают» недостижимые, зачем тратить на это время и другие ресурсы? |
Сообщ.
#115
,
|
|
|
Цитата applegame @ Как нравится не получится. Я однажды писал маленький плагин для Blender. Нужно было импортировать/экспортировать модельки для игры. Так вот помучался немного. Написал в итоге, но язык не понравился. На питоне и мучился? )) Или на чем? Я писал на С++ плагин ждя 3DMax Studio, который экспортирует модель из 3DMax в мой собственный формат, который я даже сам придумал как мне в голову пришло, и даже на С++ не долго мучился, а в питоне, так там и мучится не нужно. Там же выбирай что хочешь, списки, кортежи, массивы, мапы и т.д. какое там мучение и в каком месте то? |
Сообщ.
#116
,
|
|
|
Помимо того, что запись кода в строковом литерале этого же языка для парсинга compile-time - это убожество, есть следующие вопросы
Чем это лучше задания типа-стратегии? Чем это лучше просто передачи функтора в find? Добавлено Цитата korvin @ Обычно же GC копируют достижимые объекты, а не «прибивают» недостижимые, зачем тратить на это время и другие ресурсы? Потому что для D возможен лишь консервативный сборщик. |
Сообщ.
#117
,
|
|
|
Цитата korvin @ Он в большинстве случаев не хуже, а во многом лучше. Я поставлю пару простых задач, тут сидят плюсовики посмотрим, как они их решат, на C++. И сравним, какое решение изящней.Вот если бы D хотя бы в половине случаев однозначно переплевывал плюсы, было бы интересней. =) Цитата korvin @ Зачем и куда копировать достижимые ресурсы? Сразу предупреждаю, я не очень большой специалист в алгоритмах работы GC. Обычно же GC копируют достижимые объекты, а не «прибивают» недостижимые, зачем тратить на это время и другие ресурсы? |
Сообщ.
#118
,
|
|
|
Цитата applegame @ Зачем и куда копировать достижимые ресурсы? Как минимум сдвигать для борьбы с фрагментацией. |
![]() |
Сообщ.
#119
,
|
|
Цитата applegame @ Я там привел, два примера, повторю: Как-то странно смотреть на это строко-ковыряние при наличии compile-time рефлексии и «значительно более мощных возможностей метапрограммирования». Разработчики D фанаты тикля что ли? |
Сообщ.
#120
,
|
|
|
Цитата MyNameIsIgor @ Есть два проекта более продвинутых сборщиков для D:A Precise Garbage Collector for DConcurrent Garbage Collection for DНе знаю, являются ли они консервативными, но более продвинутыми точно. Потому что для D возможен лишь консервативный сборщик. |