Re[2]: Проблема доступа к членам класса из вложенного
От: Hroftina Россия  
Дата: 10.12.04 08:03
Оценка:
F>class TTraceSound
F>{

F> void Trace(eTraceMessageType, const char*, ...);


F> public:

F> class TAnonymousAdapter
F> {
F> public:
F> void Trace(eTraceMessageType, const char*, ...) { outer_->Trace(...); }

F> private:

F> friend class TTraceSound;
F> TAnonymousAdapter(TTraceSound* outer): outer_(outer) {}
F> TTraceSound* outer_;
F> };
F>};
F>[/c]

Только вот дружба должна быть в другую сторону...
class TTraceSound {
friend class TAnonymousAdapter;
...

А зачем это все нужно?
Петтерн адаптер (wrapper) подразумевает создание класса, интерфейс которого удовлетворяет нашим требованиям, а реализуется посредством класса/классов с другим интерфейсом. Зачем вложенный класс?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.