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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.07.2011, 06:59   #1
Madmaxisss
Форумчанин
 
Регистрация: 12.07.2011
Сообщений: 158
По умолчанию указатель this

Дорогие программисты объясните пожалуйста на небольшом примере, как работает указатель this с динамическими объектами, списками.

Мне не хватает лишь небольшого примера чтоб понять
Madmaxisss вне форума Ответить с цитированием
Старый 25.07.2011, 07:11   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

this - работает для объектов классов и уже обсуждалось
p51x вне форума Ответить с цитированием
Старый 25.07.2011, 07:23   #3
Madmaxisss
Форумчанин
 
Регистрация: 12.07.2011
Сообщений: 158
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
this - работает для объектов классов и уже обсуждалось
p51x, конечно он работает с объектами классов в ООП

Последний раз редактировалось Madmaxisss; 25.07.2011 в 07:28.
Madmaxisss вне форума Ответить с цитированием
Старый 25.07.2011, 08:18   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

В чем ваш вопрос?
p51x вне форума Ответить с цитированием
Старый 25.07.2011, 08:40   #5
Madmaxisss
Форумчанин
 
Регистрация: 12.07.2011
Сообщений: 158
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
В чем ваш вопрос?
Мне нужно что бы вы мне показали не большой пример с этим указателем:

Когда возникает неоднозначность в именах, для явного вызова конструкторов класса, для возврата указателя на текущий объект в методах класса.

Всего лишь небольшой примерчик, чтобы мне разобраться.
Madmaxisss вне форума Ответить с цитированием
Старый 25.07.2011, 09:57   #6
Blade
Software Engineer
Участник клуба
 
Аватар для Blade
 
Регистрация: 07.04.2007
Сообщений: 1,618
По умолчанию

Код:
class A
{
private:
     int i;

public:
     void func(int i)
     {
          // здесь i - аргумент функции
          // а this->i - член класса A::i
     }

     A* func2()
     {
          return this; // возвращает указатель на объект, для которого вызвана функция
     }
};
На счет конструкторов - не совсем понял что вам надо.
Мужество есть лишь у тех, кто ощутил сердцем страх, кто смотрит в пропасть, но смотрит с гордостью в глазах. (с) Ария
Blade вне форума Ответить с цитированием
Старый 25.07.2011, 10:09   #7
JO123
Новичок
Джуниор
 
Регистрация: 25.07.2011
Сообщений: 1
По умолчанию

>Когда возникает неоднозначность в именах,

Код:
struct A
{
    int a;
    void print(int a)
    {
        std::cout << a << std::endl;
        std::cout << this->a << std::endl;
    }
};

A x;
x.a = 10;
x.print(12);
==========
12
10

>для явного вызова конструкторов класса,

какого класса? вопрос не ясен

>для возврата указателя на текущий объект в методах класса.

Код:
struct A
{
    A * get()
    {
        return this;
    }
};

A a;
A * pa = a.get();
JO123 вне форума Ответить с цитированием
Старый 25.07.2011, 23:31   #8
Madmaxisss
Форумчанин
 
Регистрация: 12.07.2011
Сообщений: 158
По умолчанию

JO123, Blade, Большое спасибо, очень помогли, теперь понятненько как он работает
Madmaxisss вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
*указатель = *указатель tiger() Общие вопросы C/C++ 7 10.05.2011 12:49
указатель на указатель петя иванов Общие вопросы C/C++ 5 10.04.2011 02:23
Указатель... Romario92 Общие вопросы C/C++ 16 22.10.2010 20:37
Указатель this Golovastik Общие вопросы C/C++ 8 16.01.2010 10:30
(!)указатель на указатель(!) (C)stalin(Cpp) Общие вопросы C/C++ 0 07.06.2009 15:32