Агрегация - доступ к членам класса

367
18 января 2018, 21:16

Имеет ли при агрегации класс доступ к protected-полям другого, агрегированного класса?

class Date {
protected:  
    int year;
    int month;
    int day;
};
class Application  {
    Date* date;
    string FinalPoint;
    int destination;
};
Answer 1
class Date {
    friend class Application;
protected:  
    int year;
    int month;
    int day;
};

Так класс Application получит доступ ко всем полям объекта класса Data. Любого объекта, не только агрегированного...

Answer 2

Нет. Прямой доступ к protected полям возможен только через наследование. (Если не рассматривать "друзей" и т.п.)

READ ALSO
отношение между классами

отношение между классами

Можно ли в классе С выполнить расчет int a / int b и записать результат в переменную класса С int c?

370
Перегрузка оператора в классе

Перегрузка оператора в классе

Не получается перегрузить оператор сравнения "<"Использую Qt

394
Вывод данных в виде таблицы в консоле

Вывод данных в виде таблицы в консоле

как мне это вывести таблицей в консоле?

262
&ldquo;Name of project&rdquo; has triggered a breakpoint

“Name of project” has triggered a breakpoint

Проблема была описанна выше) Смысл программы, что бы находить самое длинное слово 1 строки, которое должно содержаться в 2 других строкахВсе...

283