Форум программистов, компьютерный форум CyberForum.ru

Когда необходимы определения членов-перемещения - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Удалить из матрицы нулевые строки и столбцы и найти строку, содержащую хотя бы один положительный элемент http://www.cyberforum.ru/cpp-beginners/thread1792902.html
Дали три задачи на зачетную. С массивами у меня более менее нормально, но вот сами задания, что от меня требуется - понять не могу. Может кто решал что-то подобное или понимает, что здесь нужно сделать? В общем прошу помочь с этими задачами. Спасибо. P.S. Оформлять нужно не в консольном, а в Форме. Уплотнить заданную матрицу, удаляя из нее строки и столбцы, заполнен-ные нулями. Найти номер...
C++ Привести систему уравнений к треугольному виду и найти количество строк, среднее арифметическое элементов Дали три задачи на зачетную. С массивами у меня более менее нормально, но вот сами задания, что от меня требуется - понять не могу. Может кто решал что-то подобное или понимает, что здесь нужно сделать? В общем прошу помочь с этими задачами. Спасибо. P.S. Оформлять нужно не в консольном, а в Форме. Коэффициенты системы линейных уравнений заданы в виде прямо-угольной матри¬цы. С помощью... http://www.cyberforum.ru/cpp-beginners/thread1792901.html
C++ Переставить местами правую и левую часть массива
Дан массив M, размерность задать в программе с помощью именованной константы. Указать элемент-границу (ввести номер с клавиатуры). Переставить местами правую и левую часть массива. Найти положение максимума и сам максимум.
C++ Отсутствует оператор "==", соответствующий этим операндам
Не понимаю в чем проблема, уже все библиотеки, что знаю подключила. Вообще код адекватный? #include "stdafx.h" #include<iostream> #include "locale.h" #include <string> #include <vector> #include <cstdlib> #include <algorithm> #include <cmath>
C++ Как сделать один универсальный класс-контейнер а-ля std::tuple из двух различных классов? http://www.cyberforum.ru/cpp-beginners/thread1792795.html
Добрый день. Есть работающий код: #include <iostream> #include <map> enum Index { First, Second, Third
C++ Почему последнее введенное число записывается два раза? Почему последнее введенное число записывается два раза? #include <stdio.h> #include <string.h> #include <stdlib.h> #include <iostream> void readFile(const char*); void writeFile(const char*); подробнее

Показать сообщение отдельно
notAll
376 / 97 / 21
Регистрация: 27.05.2016
Сообщений: 244
Завершенные тесты: 2
12.08.2016, 11:12     Когда необходимы определения членов-перемещения
В этом примере перемещение будет сгенерировано компилятором

Добавлено через 31 минуту
Я думаю, руководствоваться надо так:
1) если переменные члены нашего класса могут быть скопированы или перемещены по умолчанию, то, в большинстве случаев, можно положиться на генерируемые компилятором операции копирования и перемещения по умолчанию
2) но, если мы по каким то причинам пишем ф-ции копирования, то в этом случае ф-ции перемещения надо будет, как правило, тоже писать (или возможно определить их с пометкой default). Иначе компилятор их генерировать не будет.

3) Еще не надо забывать помечать ф-ции перемещения спецификатором noexcept если эти ф-ции действительно не могут кидать исключений. Такая пометка заставит стандартные контейнеры наподоби std::vector перемещать объекты (например при ресайсинге), а не копировать. Это еще одна из причин писать ф-ции перемещения для своих классов.
 
Текущее время: 16:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru