Понимание преимуществ семантики перемещения по сравнению с метапрограммированием шаблонов

Я читал некоторые описания семантики перемещения в C++11, и мне интересно, в каком контексте ее можно использовать. В настоящее время многие математические библиотеки C++ используют метапрограммирование шаблонов для задержки оценки.

Если M = A + B + C*D, где M, A, B, C и D — матрицы, шаблонное метапрограммирование позволяет избежать бесполезных копий. Является ли семантика перемещения более удобным способом делать подобные вещи?

Если нет, то в каком контексте используется семантика перемещения. Если да, то в чем разница/ограничения по сравнению с метапрограммированием шаблонов для такого использования?

17
задан Xeo 10 August 2012 в 13:01
поделиться