2 / 2 / 2
Регистрация: 29.11.2009
Сообщений: 320
|
||||||||||||||||
1 | ||||||||||||||||
Указатель на бызовый абстрактный класс.10.11.2010, 21:18. Показов 7670. Ответов 30
Метки нет (Все метки)
Правильно ли у меня написан "умный" указатель? Напонятно, как можно с помощью указателя на базовый класс вызывать методы производных классов ( все указатели должны быть "умными").
Т.е. если бы они были простыми, а не "умными" сделал бы так:
0
|
10.11.2010, 21:18 | |
Ответы с готовыми решениями:
30
Указатель на абстрактный шаблонный класс Что такое указатель на абстрактный класс? Скопировать объект, на который ссылается указатель на абстрактный класс Создание объекта через указатель на базовый абстрактный класс |
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
|
|
11.11.2010, 13:24 | 21 |
zhenya.ya, эта функция выполняет подсчёт ссылок, ведь просто скопировать указатель на traits недостаточно.
0
|
2 / 2 / 2
Регистрация: 29.11.2009
Сообщений: 320
|
||||||
11.11.2010, 17:40 [ТС] | 22 | |||||
Что-то у меня не так .Не совсем понятна надобность получения копии указателя на А.
0
|
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
|
|||||||||||
11.11.2010, 18:09 | 23 | ||||||||||
В каком смысле "не так"? Вроде, нормально.
только
0
|
2 / 2 / 2
Регистрация: 29.11.2009
Сообщений: 320
|
|
11.11.2010, 18:21 [ТС] | 24 |
Учел недостатки, но срывается работа на строке ptr = new first; из
main(){ Aptr<base> ptr; ptr = new first; ptr->AddDate();
0
|
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
|
|
11.11.2010, 19:05 | 25 |
zhenya.ya, что значит срывается? Пиши яснее.
0
|
2 / 2 / 2
Регистрация: 29.11.2009
Сообщений: 320
|
|
11.11.2010, 19:15 [ТС] | 26 |
При запуске обрывается работа и стрелочка указывает на void add(){ count ++;}
this 0x00000000 {count=??? pointer=??? }
0
|
5 / 5 / 0
Регистрация: 29.04.2010
Сообщений: 88
|
|
11.11.2010, 19:34 | 27 |
Ты делаешь "успехи"/
0
|
2 / 2 / 2
Регистрация: 29.11.2009
Сообщений: 320
|
|
11.11.2010, 22:10 [ТС] | 28 |
0
|
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
|
|
11.11.2010, 22:24 | 29 |
zhenya.ya, про эту проблему я уже писал в предыдущих сообщениях.
0
|
2 / 2 / 2
Регистрация: 29.11.2009
Сообщений: 320
|
||||||
11.11.2010, 23:10 [ТС] | 30 | |||||
Ошибка при вызове prt->AddDate() а т.е. не передается значение count и pointer. Вроде же везде все объявил.
0
|
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
|
||||||
12.11.2010, 01:35 | 31 | |||||
Первое, что бросилось в глаза:
В функции копирования нужно сначала вызывать "del", а уже потом "add". То есть сначала уменьшить число ссылок на текущий объект, потом забрать указатель на новый объект и увеличить число ссылок уже на новый объект.
0
|
12.11.2010, 01:35 | |
12.11.2010, 01:35 | |
Помогаю со студенческими работами здесь
31
Создать абстрактный тип данных - класс вектор, который имеет указатель на long, число элементов и переменную состояния Класс: Разработать абстрактный класс класс Point для задания координаты... Разработать абстрактный класс класс Point для задания координаты Класс: Создать абстрактный базовый класс Figure с виртуальными методами вычисления площади и периметра. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |