Скажем, например, у меня есть два класса.Является ли эта плохая практика или нормальная?
Я знаю, что один путь - передать указатель на объект Foo в конструкторе, а затем использовать его внутри Object, но это хороший способ приблизиться к вещам?
Есть ли что-то более подходящее? Спасибо.
class Object
{
private: //etc
public:
void doStuff()
{
//access the foo object (x) created in main.
}
};
class Foo
{
private: //etc
public:
void function()
{
Object * obj = new Object();
obj->doStuff();
}
};
int main(int args, char**argv)
{
Foo * x = new Foo();
x->function();
return 0;
}
Почему вы не используете наследование? – Cristy
Что вы пытаетесь сделать? Все, что я вижу, это ваш основной, создавая экземпляр Foo, а затем вызывающий функцию. В этой функции вы создаете экземпляр объекта и затем вызываете функцию. В чем вопрос? –
«один путь» --- один способ сделать что? «приблизиться к вещам» --- какие вещи? Кроме того, утечка памяти, безусловно, очень плохая практика. –