Если "оператор []" должен быть перегружен с версией неconst, версия const должна также быть реализована
Если "оператор []" должен быть перегружен с версией неconst, версия const должна также быть реализована.
Как правило, вы перегружаете оператор индекса operator[]
обеспечить доступ для чтения и доступ для записи к отдельным элементам массива или подобной структуры, содержавшейся в классе. Если вы реализуете non-const
перегрузка operator[]
, необходимо также реализовать const
версия этой перегрузки. В противном случае вы не можете использовать operator[]
считать элементы const
объект.
Это правило позволяет реализацию const
перегрузка operator[]
для доступа только для чтения без соответствующего non-const
перегрузка.
Polyspace® отмечает определение non-const
функция членства, если никакой соответствующий const
версия функции членства реализована.
Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.
Группа: Перегрузка |
Категория: необходимый, автоматизированный |