Пространства имён
Варианты
Действия

std::list::operator=

Материал из cppreference.com
< cpp‎ | container‎ | list

 
 
 
std::list
Член функций
Оригинал:
Member functions
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
list::list
list::~list
list::operator=
list::assign
list::get_allocator
Элемент доступа
Оригинал:
Element access
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
list::front
list::back
Итераторы
Оригинал:
Iterators
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
list::begin
list::cbegin

(C++11)
list::end
list::cend

(C++11)
list::rbegin
list::crbegin

(C++11)
list::rend
list::crend

(C++11)
Потенциала
Оригинал:
Capacity
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
list::empty
list::size
list::max_size
Модификаторы
Оригинал:
Modifiers
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
list::clear
list::insert
list::emplace(C++11)
list::erase
list::push_front
list::emplace_front(C++11)
list::pop_front
list::push_back
list::emplace_back(C++11)
list::pop_back
list::resize
list::swap
Операции
Оригинал:
Operations
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
list::merge
list::splice
list::remove
list::remove_if
list::reverse
list::unique
list::sort
 
list& operator=( const list& other );
(1)
list& operator=( list&& other );
(2) (начиная с C++11)
Заменяет содержимое контейнера.
Оригинал:
Replaces the contents of the container.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
1)
Скопируйте оператор присваивания. Заменяет содержимое с копией содержимого other.
Оригинал:
Copy assignment operator. Replaces the contents with a copy of the contents of other.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
2)
Переместите оператор присваивания. Заменяет содержимое с теми other использованием семантика переноса (т.е. данные в other перемещается из other в этот контейнер). other находится в силе, но неопределенное состояние после.
Оригинал:
Move assignment operator. Replaces the contents with those of other using move semantics (i.e. the data in other is moved from other into this container). other is in valid, but unspecified state afterwards.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

Содержание

[править] Параметры

other -
другой контейнер, который будет использоваться в качестве источника
Оригинал:
another container to be used as source
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

[править] Возвращаемое значение

*this

[править] Сложность

1)
Линейный в размер контейнера.
Оригинал:
Linear in the size of the container.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
2)
Постоянное.
Оригинал:
Constant.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

[править] Пример

Следующий код использует , чтобы присвоить один std::list в другую
Оригинал:
The following code uses to assign one std::list to another:
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

#include <list>
#include <iostream>
 
void display_sizes(const std::list<int> &nums1,
                   const std::list<int> &nums2,
                   const std::list<int> &nums3)
{
    std::cout << "nums1: " << nums1.size()
              << " nums2: " << nums2.size()
              << " nums3: " << nums3.size() << '\n';
}
 
int main()
{
    std::list<int> nums1 {3, 1, 4, 6, 5, 9};
    std::list<int> nums2;
    std::list<int> nums3;
 
    std::cout << "Initially:\n";
    display_sizes(nums1, nums2, nums3);
 
    // copy assignment copies data from nums1 to nums2
    nums2 = nums1;
 
    std::cout << "After assigment:\n";
    display_sizes(nums1, nums2, nums3);
 
    // move assignment moves data from nums1 to nums3,
    // modifying both nums1 and nums3
    nums3 = std::move(nums1);
 
    std::cout << "After move assigment:\n";
    display_sizes(nums1, nums2, nums3);
}

Вывод:

Initially:
nums1: 4 nums2: 0 nums3: 0
After assigment:
nums1: 4 nums2: 4 nums3: 0
After move assigment:
nums1: 0 nums2: 4 nums3: 4

[править] См. также

Создаёт list
(public функция-член) [edit]
Задаёт значения в контейнере
(public функция-член) [edit]