Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.85/13: Рейтинг темы: голосов - 13, средняя оценка - 4.85
0 / 0 / 4
Регистрация: 09.04.2016
Сообщений: 128

Конструктор копирования в С++

25.06.2018, 22:00. Показов 2872. Ответов 22
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Такой вопрос, работает ли такой синтаксис, если я передаю указатель на объект, а не объект?

C++
1
2
3
4
имяКласса (const имяКласса & object)
{
    //код конструктора копирования
}
не лучше ли сделать так?:
C++
1
2
3
4
имяКласса (имяКласса * object)
{
    //код конструктора копирования
}
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
25.06.2018, 22:00
Ответы с готовыми решениями:

Не могу сделать чтобы класс содержал основной конструктор и конструктор копирования
Разработать класс ThreeAngle для работы с плоскими треугольниками. В качестве членов-данных задаются длины трех сторон треугольника. Класс...

Конструктор класса, конструктор копирования запускается не тот который нужен
Есть такой конструктор: Neuron::Neuron(int iType_activation_funk) { this->iType_act = iType_activation_funk; switch...

Не могу правильно сделать конструктор и конструктор копирования и принадлежность точки с заданными координатами треугольнику
#include "stdafx.h" #include <iostream> #include <conio.h> #include <windows.h> #include <math.h> #include <algorithm> using...

22
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
26.06.2018, 15:58
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от IlushaMax Посмотреть сообщение
Я могу вызвать Class(class1); и Class(class2); и получу одно и тоже?
Нет. Даже если Вы напишете два семантически полностью эквивалентных конструктора один из которых принимает ссылку, а другой - указатель на объект конструируемого класса, то они не будут эквивалентны в смысле функциональности. Это потому, что конструктор копии вызывается неявно как инструмент создания копии объекта в специальных случаях, таких как передача в функцию, возврат из функции, инициализация объекта объектом его же типа. То есть, пока Вы не разделите вопрос на два подвопроса:
1/ что такое конструктор копии
2/ зачем нужен конструктор копии и как он вызывается
Вам будет трудно.
Поэкспериментируете с функциями для начала, передавая в них объекты, ссылки и указатели. Снабдите конструктора и функции радостными приветствиями, позволяющими идентифицировать место их возникновения. Станет легче. Или не станет. Но тяжелее, - точно не станет, - попробуйте.
0
techpriest
 Аватар для Mirmik
634 / 213 / 57
Регистрация: 27.02.2014
Сообщений: 1,180
26.06.2018, 16:06
Думаю, стоит изучить литературу по теме. Тема указателей не фигурирует в джава. Стоит немного академичнее подойти.

Добавлено через 1 минуту
Просто, по вашему желанию скормить конструктору неинициализированный указатель видно, что у вас есть некоторая каша в голове...
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
26.06.2018, 17:57
Цитата Сообщение от Mirmik Посмотреть сообщение
Просто, по вашему желанию скормить конструктору неинициализированный указатель видно, что у вас есть некоторая каша в голове...
Не увидел, где это было. Что касается java, то там действительно нет указателей. Дело усложняется тем, что там нет и значений для пользовательских типов. Это действительно нужно как-то пережить. В C++/CLI тоже похожая ситуация. Там есть только управляемые дескрипторы, которые носят в себе признаки и указателей и ссылок. Объекты встроенных типов могут быть упакованы... Когда после этого всего начинаешь знакомиться с сишным копированием, - первое время трудно. По себе знаю.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.06.2018, 17:57

Конструктор инициализации, конструктор копирования, деструктор
Я сделал почти задание по перегрузке операторов. Осталось одно, тоесть три: конструктор инициализации, конструктор копирования, деструктор....

Создать класс "Вектор" и реализовать конструктор по умолчанию, конструктор копирования и деструктор
Всем доброго времени суток! нужна ваша помощь! нужно создать класс вектор и реализовать конструктор по умолчанию, копирования и...

Конструктор копирования
Выдераю кусок кода с программы надеюсь поймете кто будет смотреть: конструктор: myclass(const myclass &other) { this->size=...

Конструктор копирования
Почему экземпляры класса копируются без конструктора копий ? и к тому же получили разные адреса ? =====array2.h.cpp======= …….. ...

Конструктор копирования
Есть вопрос. Как объект одного класса передать в объект другого класса?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
23
Ответ Создать тему
Новые блоги и статьи
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
32 сукцессия
anaschu 19.07.2026
сукцессия 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не «подкручивает» сходимость —. . .
сукцессия 31: модель микоризы - это модель ещё нескольких явлений, социальных и экономических
anaschu 18.07.2026
Теория «Всего»: апдейт v1. 1. 2 — 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не. . .
сукцессия 30. Массив проверяющих друг друга моделей
anaschu 18.07.2026
Архитектура сети взаимопроверяющих моделей микоризной сукцессии (v2. 0) Развитие тензорного ОДУ-ядра и создание кросс-платформенного калибровочного полигона Уважаемые коллеги! В продолжение. . .
Грибы - это женщины, деревья - это мужчины. Анти инь янь для союза мужчины и женщины.
anaschu 18.07.2026
ГЛАВНЫЙ НАУЧНО-ФИЛОСОФСКИЙ ВЫВОД: Сексуально-Репродуктивный Капитализм против Государства Моногамии Коллеги, мы вышли на финишную прямую 20-мерного ОДУ-моделирования вековой сукцессии (ветка. . .
Текстовый слайдер с нумерацией страниц и кроссбраузерность.
russiannick 18.07.2026
Один мой друг написал текстовый слайдер с нумерацией страниц. Сегодня я расскажу как он умудрился подружить его с кроссбраузерностью. Очевидно сложно угодить с шириной каждому браузеру. Один крадет. . .
Грибы - это мемы, дерево - это человек. Применение микоризной модели к теории меметики Докинза.
anaschu 18.07.2026
Меметический изоморфизм теории «всего»: Грибная сукцессия как модель эволюции идей Докинза Базовый код системы ОДУ микоризной сукцессии описывает не просто биологию, а универсальную. . .
Грибы - это корпорации, деревья - это государства. Механизм массонского захвата власти
anaschu 18.07.2026
Макроэкономический изоморфизм теории «всего»: Грибная сукцессия как модель транснационального капитализма Базовый код системы ОДУ микоризной сукцессии описывает не просто биологию, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru