Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Chapter 23. Boost.Move

Ion Gaztanaga

Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Table of Contents

Tested compilers
What is Boost.Move?
Introduction
Implementing copyable and movable classes
Copyable and movable classes in C++0x
Copyable and movable classes in portable syntax for both C++03 and C++0x compilers
Composition or inheritance
Movable but Non-Copyable Types
Containers and move semantics
Constructor Forwarding
Implicit Move when returning a local object
Move iterators
Move inserters
Move algorithms
Emulation limitations
Initializing base classes
Template parameters for perfect forwarding
Binding of rvalue references to lvalues
Assignment operator in classes derived from or holding copyable and movable types
Templated assignment operator in copyable and movable types
How the library works
Thanks and credits
Release Notes
Boost 1.81 Release
Boost 1.79 Release
Boost 1.78 Release
Boost 1.77 Release
Boost 1.76 Release
Boost 1.75 Release
Boost 1.73 Release
Boost 1.71 Release
Boost 1.70 Release
Boost 1.69 Release
Boost 1.67 Release
Boost 1.66 Release
Boost 1.65 Release
Boost 1.64 Release
Boost 1.62 Release
Boost 1.61 Release
Boost 1.60 Release
Boost 1.59 Release
Boost 1.58 Release
Boost 1.57 Release
Boost 1.56 Release
Boost 1.55 Release
Boost 1.54 Release
Boost 1.53 Release
Boost 1.51 Release
Boost 1.49 Release
Reference
Header <boost/move/adl_move_swap.hpp>
Header <boost/move/algo/adaptive_merge.hpp>
Header <boost/move/algo/adaptive_sort.hpp>
Header <boost/move/algo/predicate.hpp>
Header <boost/move/algo/unique.hpp>
Header <boost/move/algorithm.hpp>
Header <boost/move/core.hpp>
Header <boost/move/default_delete.hpp>
Header <boost/move/iterator.hpp>
Header <boost/move/make_unique.hpp>
Header <boost/move/move.hpp>
Header <boost/move/algo/move.hpp>
Header <boost/move/traits.hpp>
Header <boost/move/unique_ptr.hpp>
Header <boost/move/utility.hpp>
Header <boost/move/utility_core.hpp>
[Important] Important

To be able to use containers of movable-only values in C++03 mode you will need to use containers supporting move semantics, like Boost.Container containers

Boost.Move has been tested in the following compilers/platforms:

  • Visual C++ >= 7.1.
  • GCC >= 4.1.
[Warning] Warning

GCC < 4.3 and MSVC < 9.0 are deprecated and will be removed in the next version.


PrevUpHomeNext