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

Указатель this в конструкторе копирования - C++

Восстановить пароль Регистрация
 
rura
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 152
23.05.2014, 23:33     Указатель this в конструкторе копирования #1
Добрый всем вечер.
Подскажите пожалуйста, как правильно применить в конструкторе копирования указатель this?

Вот есть код.

Правильно ли тут применен этот указатель?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include "stdafx.h"
#include <iostream>
using namespace std;
 
class CLASS
{
 
    struct NOTE
    {
        char Family[100];
        char Name[100];
        int Phone;
        int Birthday;
        int Birthmonth;
        int Birthyear;
    };
 
    NOTE* people;
    int number;
 
    void create();
 
 
public:
    CLASS()
    {}
 
    CLASS(int n)
    {
        number = n;
        people = new NOTE[number];
        create();
    }
 
    CLASS(const CLASS & list)
    {
        this->number = list.number;
        people = new NOTE[number];
        for (int i = 0; i < number; ++i)
        {
            strcpy_s(people[i].Family, list.people[i].Family);
            strcpy_s(people[i].Name, list.people[i].Name);
            people[i].Phone = list.people[i].Phone;
            people[i].Birthday = list.people[i].Birthday;
            people[i].Birthmonth = list.people[i].Birthmonth;
            people[i].Birthyear = list.people[i].Birthyear;
        }
    }
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Avazart
 Аватар для Avazart
6905 / 5145 / 253
Регистрация: 10.12.2010
Сообщений: 22,630
Записей в блоге: 17
23.05.2014, 23:52     Указатель this в конструкторе копирования #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
this->number = list.number;
Почему не опустить его
C++
1
number = list.number;
rura
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 152
24.05.2014, 00:13  [ТС]     Указатель this в конструкторе копирования #3
Я согласен с Вами.
Просто у меня задание, сделать его с этим указателем. А поскольку я первый раз его явно использую, я спрашиваю правильно ли.
Avazart
 Аватар для Avazart
6905 / 5145 / 253
Регистрация: 10.12.2010
Сообщений: 22,630
Записей в блоге: 17
24.05.2014, 00:39     Указатель this в конструкторе копирования #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Да правильно ( хотя в этом и нет необходимости)
rura
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 152
24.05.2014, 00:46  [ТС]     Указатель this в конструкторе копирования #5
Благодарю.
Avazart
 Аватар для Avazart
6905 / 5145 / 253
Регистрация: 10.12.2010
Сообщений: 22,630
Записей в блоге: 17
24.05.2014, 00:50     Указатель this в конструкторе копирования #6
Только в классе не наблюдаю деструктора во первых.
Во вторых CLASS - плохая идея писать названия классов в верхнем регистре.
rura
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 152
28.05.2014, 19:06  [ТС]     Указатель this в конструкторе копирования #7
А что значить "в верхнем регистре."?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.05.2014, 19:11     Указатель this в конструкторе копирования
Еще ссылки по теме:

C++ О конструкторе копирования
C++ В конструкторе копирования отцовского (_str) класса возникает некое "необработанное исключение"
C++ С какой целью необходимо передвать по ссылке переменную в конструкторе копирования?

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

Или воспользуйтесь поиском по форуму:
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
28.05.2014, 19:11     Указатель this в конструкторе копирования #8
Цитата Сообщение от rura Посмотреть сообщение
А что значить "в верхнем регистре."?
ВЕРХНИЙ нижний
Yandex
Объявления
28.05.2014, 19:11     Указатель this в конструкторе копирования
Ответ Создать тему
Опции темы

Текущее время: 13:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru