Aycon's user avatar
Aycon's user avatar
Aycon's user avatar
Aycon
-
Участник в течение 5 лет 11 месяцев
-
Последнее посещение более недели назад
385 действий
комментарий
Как правильно высвобождать частично созданные объекты в фабричном методе?
@AlexanderPetrov нет, не докопаются: stackoverflow.com/questions/79443271 Только у нас так бывает.
комментарий
Как правильно высвобождать частично созданные объекты в фабричном методе?
@user7860670 потому что это не минимально воспроизводимый пример. Русскоязычное сообщество очень остро реагирует на "лишние" строчки в минимально воспроизводимом примере. А также часто ссылаются на проблему XY. Уловить тонкую грань невозможно. До чего-нибудь обязательно докопаются.
награждён
комментарий
Как правильно высвобождать частично созданные объекты в фабричном методе?
@AlexanderPetrov спасибо! Это внушает доверие. Пересмотрю свои убеждения в связи с этим.
комментарий
Как правильно высвобождать частично созданные объекты в фабричном методе?
@user7860670 если исключения реализованы, тогда моя ссылка актуальна?
комментарий
Как правильно высвобождать частично созданные объекты в фабричном методе?
@user7860670 вероятно, вы правы. Но если исключений не было, зачем Microsoft упоминает исключения в этой заметке?
комментарий
Как правильно высвобождать частично созданные объекты в фабричном методе?
Спасибо за предложение. Я отмечу это как ответ. Да, спасибо за напоминание. Я минимизировал пример, поэтому в коде этого нет. В реальном проекте
MyClass - IDisposable.
комментарий
Как правильно высвобождать частично созданные объекты в фабричном методе?
@user7860670 У вас есть ссылка на источник, почему это хорошая практика? У меня есть ссылка на источник, почему это плохая практика (или по крайней мере требует очистки ранее созданных объектов): learn.microsoft.com/ru-ru/cpp/mfc/…
комментарий
Как правильно высвобождать частично созданные объекты в фабричном методе?
@user7860670 добавил пример. Надеюсь, теперь вопрос стал менее "мутным" для вас.
отредактирован
Как правильно высвобождать частично созданные объекты в фабричном методе?
в текст добавлен 1491 символ
Loading...
комментарий
Как правильно высвобождать частично созданные объекты в фабричном методе?
@AlexF, 1) три
try ... finaly, я правильно понял? На каждый компонент? Причём вложенные друг в друга, не так ли? А если будет 5 компонентов, то 5 вложенных друг в друга try ... finaly. 2) Метод Create является фабричным методом.
награждён
комментарий
Оператор `using` для фабрики высвобождает ресурс, делегируемый фабрикой в экземпляры
Спасибо за полный ответ и варианты решений. Я редко вижу такие ответы на русскоязычном Stack Overflow
комментарий
Оператор `using` для фабрики высвобождает ресурс, делегируемый фабрикой в экземпляры
@CrazyElf я полагаю, что вложенные методы с
yield не останавливают оператор using от очистки, как я мог бы ожидать и это большая проблема
комментарий
Оператор `using` для фабрики высвобождает ресурс, делегируемый фабрикой в экземпляры
@CrazyElf я добавил реализацию IDisposable для SuperProducer и сделал его не статическим. Это никак не повлияло на результат
Loading...
комментарий
Где я могу хранить экземпляры Generic типа?
@aepot ковариантность возможна