Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: [c++] user defined pointer++  (Прочитано 5956 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Mayor
Специалист

ru
Offline Offline

« : 02-08-2009 12:29 » 

[c++] user defined pointer++

есть класс
class a{
 a* p;
 int b;
}

как переопределить операцию инкремента его указателя?
чтобы при:
a* pa;
++pa;
выполнялось не pa=&pa+sizeof(a);
а pa=pa->p;
Не понял
Записан

1n c0de we trust
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #1 : 02-08-2009 13:02 » 

А оператор с переопределением ++ трудно сделать?
Записан

Не будите спашяго дракона.
             Джаффар (Коша)
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #2 : 02-08-2009 14:12 » 

Цитата
чтобы при:
a* pa;
++pa;
выполнялось не pa=&pa+sizeof(a);

вообще то, при ++pa; выполнится
*((void**)&pa) = (void*)(((unsigned char*)pa)+sizeof(*pa));
« Последнее редактирование: 02-08-2009 14:16 от Алексей1153++ » Записан

Mayor
Специалист

ru
Offline Offline

« Ответ #3 : 02-08-2009 16:19 » 

А оператор с переопределением ++ трудно сделать?

не получилось, компилятор ругается на тип
a*&

я вот тут подумал, а это ваще реально?
в смысле переопределяются ли в с++ операторы для указателей объектов, как для самих объектов?
Записан

1n c0de we trust
Вад
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #4 : 02-08-2009 16:24 » 

А что мешает сделать итератор? Ведь ты лист делаешь, насколько я понимаю?
Записан
Mayor
Специалист

ru
Offline Offline

« Ответ #5 : 02-08-2009 16:27 » 

А что мешает сделать итератор? Ведь ты лист делаешь, насколько я понимаю?
да лист
разбор итераторов вроде будет только через несколько глав, а я щас перезагрузку операторов читаю Улыбаюсь
Записан

1n c0de we trust
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines