Форум программистов, компьютерный форум, киберфорум
Наши страницы

Сравнение указателей и ссылок. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Пути из начальной вершины орграфа в конечную http://www.cyberforum.ru/cpp-beginners/thread145925.html
Люди, помогите пожалуйста, нужно составить рекурсивную программу для печати всех путей, ведущих из начальной вершины орграфа G в конечную. Начальную и конечную вершины ввести в ходе работы программы...
C++ решить систему... и иследование поведения функции Требования к выполнению задания №1: 1. Требуется решить систему линейных алгебраических систем уравнений четвертого порядка методом Гаусса. 2. Разработать блок-схему алгоритма и программу для... http://www.cyberforum.ru/cpp-beginners/thread145918.html
Описать структуру с именем Worker C++
здраствуйте !!!помогите пожалуйста!!!! Описать структуру с именем Worker, содержащую следующие поля: 1)фамилия и инициалы занимаемой должности; 2)название занимаемой должности; год поступления на...
Создание структуры C++
Здравствуйте!!!Помогите написать практическую работу на тему "Создание структуры. Поиск информации из файла. Запись в файл. Чтение из файла. Заполнение списка. Поиск данных из списка. Показать...
C++ Лаба для зачета http://www.cyberforum.ru/cpp-beginners/thread145895.html
Ведомость абитуриентов, сдавших вступительные экзамены в университет, содержит: Ф.И.О. абитуриента, оценки. Определить средний балл по универси-тету и вывести список абитуриентов, средний балл...
C++ очень нужно!!!!!!!!!!!! напишите программу))) Составить программы на двух языках программирования C + + и Pascal Элемент матрицы называется локальным минимумом, если он строго меньше всех имеющихся у него соседей. Подсчитать количество... подробнее

Показать сообщение отдельно
AzaKendler
214 / 116 / 9
Регистрация: 30.05.2011
Сообщений: 1,772
19.02.2012, 16:48
alex_x_x, пожалуй ты прав наверно в этом вся соль

C++
1
2
3
4
5
6
7
8
9
10
11
12
remote_integer& operator=(remote_integer&& other) {
        cout << "MOVE ASSIGNMENT OPERATOR." << endl;
 
        if (this != &other) {
            delete m_p;
 
            m_p = other.m_p;
            other.m_p = NULL;
        }
 
        return *this;
    }
C++
1
2
3
4
5
6
7
8
9
10
11
12
remote_integer& operator=(remote_integer& other) {
      
 
        if (this != &other) {
            delete m_p;
 
            m_p = other.m_p;
            other.m_p = NULL;
        }
 
        return *this;
    }
как на твой взгляд в чем различие будет?


считается что вызова деструктора не будет в первом случае. т.е. данные не скопировались
а "как бы перенеслись" и обнулив данные объекта переданного по rvalue мы предотвращаем вызов его деструктора. если не так понял. поправьте

Добавлено через 5 минут
Evg, вопрос в том что если lvalue ref и указатель это на низком уровне одно и тоже, то rvalue ref
судя по всему отличается и хотелось более ясного представления, а что же он таки делает и почему дает те эффекты о которых пишется тут.
т.е. мне показалось что переменная см. скрин, вначале помещается в некую "область для временных данных". в общем хотелось мнения людей понимающих хорошо ассемблер.
помещая переменную в такую область какой выигрыш можно получить?
что прозойдет с объектами если к ним обратится через rvalue.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.