382 / 280 / 31
Регистрация: 04.09.2009
Сообщений: 1,225
1

В чем разница двух перегрузок?

08.01.2014, 03:18. Показов 387. Ответов 1
Метки нет (Все метки)

C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
// move.h
template<typename _Tp>
    constexpr _Tp&&
    forward(typename std::remove_reference<_Tp>::type& __t) noexcept
    { return static_cast<_Tp&&>(__t); }
 
template<typename _Tp>
    constexpr _Tp&&
    forward(typename std::remove_reference<_Tp>::type&& __t) noexcept
    {
      static_assert(!std::is_lvalue_reference<_Tp>::value, "template argument"
            " substituting _Tp is an lvalue reference type");
      return static_cast<_Tp&&>(__t);
    }
И для чего 2-я падает, когда передаем LValue?
Спасибо
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.01.2014, 03:18
Ответы с готовыми решениями:

В чем смысл двух перегрузок одного оператора?
Объясните, в чем здесь смысл перегрузки: inline bool operator == ( const char *Name ) const {...

Оператор new. Динамическое выделение памяти - В чем разница двух определений массивов
Подскажите, в чем разница двух определений массивов int *mas = new int; int *mas = new int; ...

В чем разница двух программ?
Необходимо сделать отображение текущего времени. Вот этот вариант работает правильно:...

В чем разница двух установленных ос на компе
а в чем прикол двух установленных ос на компе чет не пойму???

1
Форумчанин
Эксперт CЭксперт С++
8190 / 5040 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
08.01.2014, 06:33 2
Перегрузка идет по типу ссылок - lvalue и rvalue.
В случае с rvalue, проверяем на стадии компиляции, не является ли тип _Tp ссылкой lvalue (Type&). Если все верно (является Type или Type&&), то реализуем(кастуем к) rvalue на основе нашего объекта. Таким образом, реализуем move-семантику.

Запрещено потому что
Type&& & в итоге даст Type&. Так работает свертка ссылочных типов
http://www.rsdn.ru/article/cpp/Cpp11NewStd.xml
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.01.2014, 06:33
Помогаю со студенческими работами здесь

В чем разница этих двух скриптов?
Подскажите, а в чем собственно разница этих двух сриптов, и когда использовать один, а когда...

В чем разница двух примеров кода
Здравствуйте! while (Connected == true) { if (srReceiver.ReadLine()...

в чём разница этих двух видео карт?
-------------------------------------------------------------------------------- есть вот такие...

Литература. Чем объясняется разница в цене двух книг
Был в книжном и натолкнулся на вот такую книгу: Йен Гриффитс &quot;Программирование на C# 5.0&quot; и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru