Try_Convert для SQL Server 2008 R2

В большинстве случаев std::add_rvalue_reference_t эквивалентно T&&. Тем не менее, правила свертывания ссылок и the-rules-that-dictate-which-types-are-referenceable могут иметь ваш код, если он не учитывается.

, в некоторых случаях, когда тип статического члена type будет отличаться, поскольку T является не ссылочным типом. Например, std::add_rvalue_reference_t разрешает void и (используя другой шаблон, который вы упомянули в качестве примера) std::add_pointer_t разрешает T* (если вы хотите вызвать хаос, требуемый ритуал std::add_pointer_t>:))

Уважая использование, его можно использовать в качестве параметра шаблона шаблона, чтобы сделать какую-то чертову черную магию. Во всяком случае, такие вещи, как std::is_rvalue_reference_t или std::remove_reference_t , обычно чаще используются при манипулировании ссылочными атрибутами типа.

30
задан Siyual 3 December 2015 в 15:45
поделиться