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

Deep copy and Shadow copy - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Ошибка при выполнении http://www.cyberforum.ru/cpp-beginners/thread629877.html
Привет всем. Скажите пожалуйста, что мне делать? При выполнении программы выдает ошибку "Инструкция по адресу "0x004013bd" обратилась к памяти по адресу "0х00000002". Память не может быть "written". Использую для создания проги Dev-C++.
C++ Ввод структуры в текстовый файл столбиком и вывод данных из файла в структуру Имеется база данных в виде структуры, которая будет постепенно дописываться приблизительно до 1000 элементов. В каждом элементе структуры 10 составляющих разных размеров и размерности. struct x { char y1; char y2; char y3; char y4; char y5; char y6; char y7; http://www.cyberforum.ru/cpp-beginners/thread629872.html
Overloading [] operators C++
Преект компилируется нормально. По заданию нужно чтобы было реализованно 2 версии оператора одна для чтения другая для записи типа дано что нужно их декларироватьмплемн вот таким образом Point& operator (int index); const Point& operator (int index) const; имплементацию надо сделать самому ПРОБЛЕМА: Я в имплементации добавил чтоб он мне выводим какой оператор вызывается для чтения...
Найти количество отрицательных элементов строк, которые содержат хотя бы один нулевой элемент C++
Задание: Найти количество отрицательных элементов строк, которые содержат хотя бы один нулевой элемент. Ошибка в функции work: он ищет все отрицательные элементы, а нужно чтобы искал там где есть хоть бы один 0. Как сделать правильно это условие.. #include "stdafx.h" #include "math.h" #include "stdio.h" #include <clocale> const int MAX_N=100; //Максимальные размеры массива const...
C++ Подскажите название книги http://www.cyberforum.ru/cpp-beginners/thread629855.html
Не подскажите название книги по c++: у нёё было два автора, к ней прилагался cd, в начале не объяснялась структура длинной команды (просто говорилось что она делает), и описывалась работа не в visual studio, а в чём-то другом.
C++ Начало программирования Подскажите книжку для начала программирования на c++, а то я не уверен что Стивен Прата подходит для начала. подробнее

Показать сообщение отдельно
Schizorb
 Аватар для Schizorb
508 / 460 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
28.07.2012, 12:47     Deep copy and Shadow copy
В данном случае достаточно:

C++
1
m_size = source.m_size;
В m_size копируется значение source.m_size, это становятся две независящие друг от друга переменные, содержащие одинаковые значения, но при изменении одной не произойдёт изменений в другой.

Другое дело, если в классе есть указатели. Тогда поверхностное копирование приведет к тому, что в обоих объектах будут указатели, содержащие один и тот же адрес, то есть указывать они будут на одну и ту же область памяти. Значит здесь нужно копировать не значения указателей, а данные, на которые они указывают. То есть, именно то, что вы делаете для m_data. (Написать просто m_data = source.m_data было бы ошибкой)
 
Текущее время: 04:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru