19:23

с++

memento mori
помогите понять как правильно написать:


class c0{
c1[] obj;
...
bool f(int x){
//из this используется только obj, ничего не меняется
}
...
}

class c1{
c2 obj;
...
}

class c2{
//здесь очень хочется использовать функцию f()
}

зы. как правильно написать имею ввиду то, что как правильно сослаться на эту функцию. или вызывать.
мне в голову приходит только singleton, но он тут не катит.

Комментарии
18.11.2009 в 07:24

Люди никогда не достигнут совершенства, пока будут оставаться людьми...
Вы ваще знакомы с ООП? Как можно из объекта класса c2 вызвать функцию класса c0?! Она должна быть или статическая или извиняйте, должен быть объект класса с0 внутри с2
18.11.2009 в 10:12

memento mori
[revolver], к слову знакома)сложность и была в том, что ее не сделать статик и нельзя внутрь запихать объект.

но решение уже было сделано немного другим путем. как вариант решения тут: перенести функцию f таки в класс с2, + добавить в класс c2 obj(копию).

у меня была тут как раз проблема как структурировать все. вероятно плохо сформулировала вопрос.
18.11.2009 в 12:11

Люди никогда не достигнут совершенства, пока будут оставаться людьми...
Ну если фукнции фиолетово до данных, которые лежат в классе, можно забабахать класс с только одной функцией и унаследовать от него эти два. Либо написать её отдельно и сделать дружественной.