Sprawdziłem, czy specyfikator dostępu protected
może być używany wewnątrz class
, struct
, a także union
. Wiem, że specyfikator dostępu protected
oznacza, że członkowie będą prywatni, ale widoczni dla klasy pochodnej. Nie jestem w stanie wymyślić rozsądnego przypadku użycia, w którym słowo kluczowe protected
w związku byłoby przydatne, ponieważ związek nie może być częścią hierarchii dziedziczenia. Ponieważ w związku private
i protected
nie ma różnicy, dlaczego zezwalać na protected
również w związkach?Jaki jest pożytek ze słowa kluczowego "protected" w związku?
15
A
Odpowiedz
15
Powiedziałbym, że prawdziwe pytanie jest odwrotne, dlaczego nie wolno tego? Tak, w tym przypadku jest to równoznaczne z private
, ale czy naprawdę byłaby warta (choć niewielka) komplikacja implementacji języka i kompilatora? W żaden sposób nie boli.