Есть небольшой вопрос по данному шаблону. Прочитал статью
habrahabr.ru/blogs/programming/132929/ Вроде даже понял, что к чему. Пытаюсь реализовать, но не получается. Дело в том, что в примерах просто вызывается метод из другого класса, который выводит текстовую строку. В моем случае, требуется, чтобы вызванный метод изменял параметры объекта главного класса. То есть вот так:
class changeValue
{
public:
changeValue();
~changeValue();
virtual void Change() = 0;
};
changeValue::changeValue() {}
changeValue::~changeValue() {}
class General
{
public:
General();
~General();
float a;
void changeit();
changeValue *object;
};
General::General() {a=0;}
General::~General() {}
void General::changeit()
{
object->Change();
}
class changeValueTo1 : public changeValue
{
changeValueTo1();
~changeValueTo1();
void Change();
};
changeValueTo1::changeValueTo1() {}
changeValueTo1::~changeValueTo1() {}
void changeValueTo1::Change()
{
//должен изменить значение параметра a объекта класса MyClass на 1
}
class MyClass : public General
{
MyClass();
~MyClass();
};
MyClass::MyClass() {
object = new changeValueTo1;
}
MyClass::~MyClass() {
delete object;
}
Как реализовать метод void changeValueTo1::Change() так, чтобы он имел доступ к параметрам класса MyClass?