С++ - язык, который изучается постепенно.Изменение указываемого объекта во время выполнения программы


Материалы книги получены с http://www.itlibitum.ru/

Изменение указываемого объекта во время выполнения программы

При желании интерфейсный указатель может сменить указываемый объект прямо во время выполнения программы.

class Foo;

class PFoo {

private:

Foo* foo;

public:

PFoo();

void DoSomething(bool x);

// Другие функции класса

};

void PFoo::DoSomething(bool x)

{

if (x) {

delete foo;

foo = new DerivedFromFoo;

}

Foo->DoSomething();

}

Пример уже встречался в предыдущей главе: при попытке неконстантного обращения к указываемому объекту указатель выбирал другую форму этого объекта. Такой подход работает вполне нормально, если не делать глупостей (например, получать адреса членов указываемого объекта).


Назад    Содержание    Далее    

Copyright 2005. Климов Александр. All Right Reserved.
Сайт создан в системе uCoz