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

По поводу ссылок и конструктора копирования - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Двухмерный массив: Написать программу, указывающую для каждого вопроса проценты ответов «Да», «Нет», «не знаю» http://www.cyberforum.ru/cpp-beginners/thread850183.html
В двухмерном массиве размером n x m хранятся результаты опроса n человек на m вопросов. Ответами на вопросы являются слова «Да», «Нет», «не знаю». Написать программу, указывающую для каждого вопроса проценты ответов «Да», «Нет», «не знаю»
C++ Работа с графикой Здравствуйте, помогите разобраться с программой? в результате должны получиться различные графические объекты, перемещающиеся по прямым траекториям с разными случайными векторами скоростей. и возможность добавления и удаления объектов. вот все, что есть. программа не работает. #include <stdlib.h> #include <time.h> #include <grx20.h> #include <grxkeys.h> struct TPoint{ int x,y; int vx,... http://www.cyberforum.ru/cpp-beginners/thread850178.html
C++ Сформировать массив по правилу
программа формирования и вывода массива размером 6 на 3, каждые три последовательных элемента в строке которого составлены по следующему правилу: 1-й - равен удвоенному числу, введенному с клавиатуры; 2-й - равен квадрату суммы индексов предыдущего элемента; 3-й - равен остатку от деления индекса текущего элемента на 2
Нужна проверка кода (система обмена сообщениями) C++
есть код C++,компилируется в Mingw/bin при помощи g++. Данный код представляет собой систему обмена сообщениями. Идеальный случай,когда юзер не допускает ошибок при вводе регистрационных данных. проблема в написании проверки ввода этих самых данных #include "iostream" #include "locale.h" #include <string> #include <stdio.h> #include <stdlib.h> using namespace std;
C++ Описать структуру с именем NOTE http://www.cyberforum.ru/cpp-beginners/thread850152.html
Помогите с программой пожалуйста. А. Описать структуру с именем NOTE, содержащую следущие поля: Фамилия, имя; Номер телефона; День рождения(массив из трех чисел). Ввести с клавиатуры данные о 10 абонентах, записи упорядочить по трем первым цыфрам номера телефона; Б. Написать программу, выполняющую следующие действия: Вывод на экран информации о человеке, чья фамилия введенна с клавиатуры;...
C++ Заполнение массива числами Здравствуйте, есть набор чисел (3, 3.5, 4 ,4.5, 5) требуется заполнить массив который заполняется случаными образом этими числами. как это сделать? подробнее

Показать сообщение отдельно
Nick Alte
Эксперт С++
1590 / 982 / 115
Регистрация: 27.09.2009
Сообщений: 1,897
Завершенные тесты: 1
27.04.2013, 19:05     По поводу ссылок и конструктора копирования
Тогда в классе надо создавать не копию объекта T, а ссылку на него. И если надо изменять, то ссылки должны быть неконстантными:
C++
1
2
3
4
5
6
template <typename T>struct CTreeElement
{
protected:
    T& Data;
CTreeElement(T &Element): Data(Element) {}
}
Но вообще это потенциальный источник неприятных и трудноотслеживаемых проблем: а вдруг исходный объект прекратит существование, а ссылка-то никуда не делась?
Если действительно надо реализовать совместное владение объектом, подойдёт "умный указатель" shared_ptr. Только лучше сначала подумать, а надо ли оно вообще? Может, проблема решается гораздо проще и без сомнительных хитростей?
 
Текущее время: 09:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru