У меня есть класс с защищенным методом Zig :: punt (), и я только хочу, чтобы он был доступен для класса "Авокадо". В C ++ вы обычно делаете это, используя спецификатор "Друг Авокадо", но это приведет к тому, что все остальные переменные станут доступны для класса "Авокадо"; Я не хочу этого, потому что это нарушает инкапсуляцию.
Является ли то, что я хочу, невозможным или уже существует неясная уловка, которую я могу использовать для достижения того, чего хочу? Или, возможно, альтернативные шаблоны проектирования классов, которые достигнут того же самого?
Заранее спасибо за любые идеи!