Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 14.02.2010, 00:23   #1
nazavrik
Форумчанин
 
Аватар для nazavrik
 
Регистрация: 01.09.2008
Сообщений: 178
По умолчанию Параметр конструктора класса = объект этого класса

Добрый вечер!

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

Код:
class A
{
public:
        A(const char* s){}
        ...
private:
        string str;
};
Быть радикальным - значит понять вещь в её корне. К.Маркс

Последний раз редактировалось Carbon; 14.02.2010 в 00:32.
nazavrik вне форума
Старый 14.02.2010, 00:31   #2
Blade
Software Engineer
Участник клуба
 
Аватар для Blade
 
Регистрация: 07.04.2007
Сообщений: 1,618
По умолчанию

Код:
class A
{
public:
     A();
     A(A);
};
Только, полагаю, нужно еще добавить конструктор без параметров (или, с другими параметрами), иначе объект этого класса создать будет не возможно
Мужество есть лишь у тех, кто ощутил сердцем страх, кто смотрит в пропасть, но смотрит с гордостью в глазах. (с) Ария
Blade вне форума
Старый 14.02.2010, 00:33   #3
Carbon
JAVA BEAN
Участник клуба
 
Аватар для Carbon
 
Регистрация: 22.04.2007
Сообщений: 1,329
По умолчанию

Код:
class A
{
public:

A( const A & copy );

};
Конструктор копирования.
Carbon вне форума
Старый 14.02.2010, 00:34   #4
Blade
Software Engineer
Участник клуба
 
Аватар для Blade
 
Регистрация: 07.04.2007
Сообщений: 1,618
По умолчанию

Цитата:
Сообщение от Carbon Посмотреть сообщение
Конструктор копирования.
Вроде про конструктор копии не спрашивали
Мужество есть лишь у тех, кто ощутил сердцем страх, кто смотрит в пропасть, но смотрит с гордостью в глазах. (с) Ария
Blade вне форума
Старый 14.02.2010, 00:38   #5
nazavrik
Форумчанин
 
Аватар для nazavrik
 
Регистрация: 01.09.2008
Сообщений: 178
По умолчанию

Цитата:
Сообщение от Carbon Посмотреть сообщение
Код:
class A
{
public:

A( const A & copy );

};
Конструктор копирования.
Спасибо! Работает, только в конструкторе const не нужен:
Код:
class A
{
public:

A( A &s );

};
Быть радикальным - значит понять вещь в её корне. К.Маркс

Последний раз редактировалось nazavrik; 14.02.2010 в 00:41.
nazavrik вне форума
Старый 14.02.2010, 01:43   #6
Carbon
JAVA BEAN
Участник клуба
 
Аватар для Carbon
 
Регистрация: 22.04.2007
Сообщений: 1,329
По умолчанию

Цитата:
Сообщение от nazavrik Посмотреть сообщение
Работает, только в конструкторе const не нужен
const всегда нужен, если не нужно менять исходную копию. Не, конечно это необязательно, зато привычка хорошая.
Carbon вне форума
Старый 14.02.2010, 13:48   #7
MaTBeu
Eclipse Foundation
Старожил
 
Аватар для MaTBeu
 
Регистрация: 19.09.2007
Сообщений: 2,619
По умолчанию

Цитата:
Сообщение от Blade Посмотреть сообщение
Вроде про конструктор копии не спрашивали
Ну если перефразировать название темы, то получится конструктор копирования.
По поводу const - он всегда нужен, так как конструктор копирования не должен изменять исходный объект. Лучше приучитесь к этому сразу.
MaTBeu вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как в базовом классе описать указатель на объект производного класса? MasterGH Общие вопросы C/C++ 3 16.11.2009 02:55
Если в классе объявить объект другого класса,будет ли видно переменные первого класса из объекта второго? TwiX Общие вопросы Delphi 3 15.11.2009 00:54
арифметика класса + объект this Nitrino Общие вопросы C/C++ 4 19.10.2009 21:00
Как узнать, создавался ли уже объект класса? TwiX Общие вопросы Delphi 4 06.10.2009 09:44
объект класса TBItmap albatros Мультимедиа в Delphi 3 27.03.2009 16:23