Создать анимированный GIF из набора изображений JPEG

Просто прочитайте ответ Коломбо .


Это ошибка gcc. Соответствующее правило находится в [class.temporary] :

Существует два контекста, в которых временные файлы уничтожаются в другой точке, чем конец полного выражения. [...]

Второй контекст - это когда ссылка привязана к временному. Временное, к которому привязана ссылка, или временное, являющееся полным объектом подобъекта, к которому привязана ссылка, сохраняется для времени жизни ссылки, за исключением: - временного объекта, связанного с опорным параметром в вызове функции (5.2. 2) сохраняется до завершения полного выражения, содержащего вызов. - срок жизни временной привязки к возвращаемому значению в операторе return функции (6.6.3) не продлевается; временное уничтожается в конце полного выражения в операторе return. - Временная привязка к ссылке в [new] инициализаторе (5.3.4) сохраняется до завершения полного выражения, содержащего новый инициализатор .

Мы привязываем ссылку на подобъект временного, поэтому временное должно сохраняться для срока службы ссылки. Ни одно из этих трех исключений из этого правила не применяется здесь.

29
задан Cbox 10 September 2010 в 22:37
поделиться