Декларации друзей не должны использоваться
Декларации друзей не должны использоваться.
Вы объявляете функцию как друга класса для доступа к частным представителям класса вне возможностей.
class A
{
int data;
public:
// operator+ can access private members of class A such as data
friend A const operator+(A const& lhs, A const& rhs);
};Код с функциями друга может оказаться трудным для обслуживания. Для образца, если класс myClass имеет класс friend anotherClass, когда вы меняете представитель данных myClass, вы должны найти все образцы его использования в представителе функциях anotherClass.
Средство проверки правил помечает все виды использования friend ключевое слово.
Шашка соответствует спецификациям AUTOSAR C++ 14 релиза 18-03 (март 2018 года). Однако выпуск 18-10 и более поздние релизы AUTOSAR C++ 14 допускают исключение для таких операторов сравнения, как operator==. Если средство проверки правил помечает использование операторов сравнения, добавьте комментарий с обоснованием результата. Смотрите Адрес Результаты Polyspace через исправления ошибок или обоснования.
Если вы ожидаете нарушения правил, но не видите его, обратитесь к разделу «Стандартные нарушения кодирования не отображаются».
| Группа: Управление доступом представителей |
| Категория: Необходимый, Автоматизированный |