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

Сообщение Re[7]: Конструктор по ссылке и конструктор по значению? от 05.04.2018 21:13

Изменено 05.04.2018 21:14 watchmaker

Re[7]: Конструктор по ссылке и конструктор по значению?
Здравствуйте, Constructor, Вы писали:

W>>А в С++11 это уже можно обойти, если будет надо.


C>Каким образом?


Например можно написать такой опус:

template <typename Type>
void templated_foo_impl(typename boost::call_traits<Type>::param_type value)
{
    std::cout << "templated_foo(" << value << ")" << std::endl;
}

template <typename Type>
auto templated_foo(Type&& value) {
    using T = /* тут уже известен Type */;
    return templated_foo_impl<T>(std::forward<T>(value));
}
Re[7]: Конструктор по ссылке и конструктор по значению?
Здравствуйте, Constructor, Вы писали:

W>>А в С++11 это уже можно обойти, если будет надо.


C>Каким образом?


Например можно написать такой опус:

template <typename Type>
void templated_foo_impl(typename boost::call_traits<Type>::param_type value)
{
    std::cout << "templated_foo(" << value << ")" << std::endl;
}

template <typename Type>
auto templated_foo(Type&& value) {
    using T = /* тут уже известен Type */;
    return templated_foo_impl<T>(std::forward<Type>(value));
}