![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#131 | |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
![]() Цитата:
![]()
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика ![]() |
|
![]() |
![]() |
![]() |
#132 | |
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
![]() Цитата:
Код:
Код:
Последний раз редактировалось BOBAH13; 08.12.2011 в 19:21. |
|
![]() |
![]() |
![]() |
#133 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
![]() |
![]() |
![]() |
#134 |
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
![]()
Ну а я могу сказать, что зависит от реализации класса File, он может выкинуть std::exception тогда блок вылетит и код дальше по тексту не будет выполненн. Ну или как std::iostream работает is_open() метод, if поставили да и все в конце блока с if закрыли файл. Конечно идея в новой java и C# лучше -> using (File f = File("input.txt")) {} и все тут. Но по сути просто удаление и авто-закрытие файла.
|
![]() |
![]() |
![]() |
#135 |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
![]()
Могу предложить восточную философию - критические функции должны иметь недоступные программеру антиподы
![]() ![]()
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика ![]() Последний раз редактировалось Utkin; 08.12.2011 в 21:02. |
![]() |
![]() |
![]() |
#136 | ||
Старожил
Регистрация: 22.05.2007
Сообщений: 9,091
|
![]() Цитата:
Перепишите такой же безопасный и изящный код в случае с взаимоуказывающими объектами. И тут начинается веселье в виде слабых ссылок/невладеющих указателей, которые не дай бог неправильно назначить. Если брать RAII в целом, то это фигня. - А давайте инициализировать объект в момент его создания, а когда он больше не нужен - освобождать ресурсы? - А давайте. Так и повелось. Офигенно, ёмко, научно, полезно. А самое главное - свежо и инновационно. Додуматься фишки объектов, что лежат в стеке, запилить для объектов в куче - это гениально и не каждому дано. Цитата:
malloc я и не собирался приводить в соответствие с Си, а вот с realloc лоханулся - это да. Слова уже путаю, совсем старый стал. Но сборщик таки можно запилить и они существуют в природе и кем-то даже наверно используются. |
||
![]() |
![]() |
![]() |
#137 | |||||
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|||||
![]() |
![]() |
![]() |
#138 | ||||
Форумчанин
Регистрация: 10.09.2009
Сообщений: 352
|
![]()
Аргументируйте, а то у меня создалось впечатление, что вы не знаете, что такое сборка мусора.
Цитата:
Про аналоги в лиспе и других языках я знаю не хуже вас. Только вот не вы почему-то предложили это Пеплу Феникса, а я. Цитата:
Цитата:
Цитата:
2. Я не говорю, что RAII - это всё, я говорю, что это хорошее дополнение к сборке мусора, позволяющее закрыть файл/сокет/любой другой ресурс в определённый момент, а не фиг знает когда, как при сборке мусора. |
||||
![]() |
![]() |
![]() |
#139 | ||
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Цитата:
сборка мусора через ведение счетчика ссылок, ссылка уменьшается едва переменная выйдет за блок(или будет заполнена другим значением), едва счетчик будет == 0, как тут же будет уничтожен объект. кстати Цитата:
либо же писать try-catch блок. и кстати еще, сборка мусора(не используемой памяти) и уничтожение объектов тоже не обязано быть одним и тем же. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
||
![]() |
![]() |
![]() |
#140 | |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
![]() Цитата:
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика ![]() |
|
![]() |
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
можно ли подобный текст перевести на человеческий язык? | alexxx777 | Помощь студентам | 0 | 24.05.2010 19:56 |
Как создать вид подобный SolidWorks. | KemanSR | Общие вопросы C/C++ | 6 | 04.05.2010 21:30 |
Добавить модуль в phpnuke-подобный движок | Able2Know | Фриланс | 3 | 23.04.2010 16:29 |
В Access есть тип данных "Счетчик".Есть ли подобный тип данных в MS Sql Server 2000? | An_ton | SQL, базы данных | 5 | 16.01.2009 17:55 |