Вдохновленный этот вопрос. Предположим, что у меня есть class Lock
со стандартным конструктором, а в некотором коде я пишу следующее утверждение:
Lock();
это приведет к созданию временного объекта class Lock
и сразу же уничтожит его. Конечно, создание может иметь некоторые побочные эффекты и что будет изменять поведение программы, однако это выглядит довольно странно.
Итак, первое мое предположение заключается в том, что такие утверждения, в полной мере действительные с точки зрения языка, с большой вероятностью содержат логическую ошибку.
Имеются ли какие-либо правильные примеры этого утверждения? Есть ли какие-то известные и популярные идиомы, которые включают такие заявления? Зачем мне такие утверждения в правильной программе?