Информация об изменениях

Сообщение Re[6]: std::function, suitable return type от 24.09.2014 10:11

Изменено 24.09.2014 10:17 Evgeny.Panasyuk

Здравствуйте, jazzer, Вы писали:

J>Да, действительно, твоя правда. Тогда это дефект стандарта, имхо.


Да, похоже на дефект. Точнее зависит от того, "что же хотел сказать автор".
Может они и имели ввиду, что код ТС неверен (просто без диагностики), а оговорка в operator() избыточна.

J>Потому что в вопросе речь идет о конструкторе


Дело в том что при instantiation конструктора, происходит instantiation вызова данного пользователем function object — так как здесь type erasure.
Поэтому я и смотрел в std::function::operator() — так как он диктует требования к тому как будет инстанциироваться вызов function object.
Re[6]: std::function, suitable return type
Здравствуйте, jazzer, Вы писали:

J>Да, действительно, твоя правда. Тогда это дефект стандарта, имхо.


Да, похоже на дефект. Точнее зависит от того, "что же хотел сказать автор".
Может они и имели ввиду, что код ТС неверен (просто без диагностики), а оговорка в operator() избыточна.

J>Потому что в вопросе речь идет о конструкторе


Дело в том что при instantiation конструктора, происходит instantiation вызова данного пользователем function object — так как здесь type erasure.
Поэтому я и смотрел в std::function::operator() — так как он диктует требования к тому как будет instantiate вызов function object (эта instantiation происходит во вспомогательном объекте).