friend- все статьи тега


Когда следует использовать 'friend' в C++?

Я читал через C++ FAQ и было любопытно о friend декларации. Я лично никогда не использовал его, но я заинтересован в изучении языка. что является хорошим примером использования friend? читая FAQ немного дольше Мне нравится идея <<>> оператор перегрузки и добавления в качестве друга этих классов. Однако я не уверен, как это не нарушает инкапсуляцию. Когда эти исключения могут оставаться в рамках строгости, которая является ООП? ...

Внутренние классы в C++ автоматически друзей?

Если я определяю внутренний класс В C++, это автоматически друг из класса, который его содержит? Например, это законно: class Outer { public: class Inner { public: void mutateOuter(Outer& o); }; private: int value; }; void Outer::Inner::mutateOuter(Outer& o) { o.value ++; // Legal? Or not? } Я спрашиваю, потому что на некоторых компиляторах я пробовал (VS2003) этот код не будет работать, но я слышал, по крайней мере, анекдотично, что он работает на неко ...