DEENESPTFRRUARHIKOZHNL

класс ara::diag::DiagnosticSovdArrayContentElementDataConstIterator

[SWS_DM_02221] Upstream: RS_Diag_04260

class DiagnosticSovdArrayContentElementDataConstIterator {...};

Const iterator for a DiagnosticSovdArrayContentElementData.

Header-Datei#include "ara/diag/diagnostic_sovd_content_element_data.h"
Forwarding-Header#include "ara/diag/diag_fwd.h"
Scopenamespace ara::diag

Руководство пользователяСОЗДАНО ИИ

Обеспечивает пошаговый обход элементов массивов SOVD в режиме «только для чтения» в диагностических приложениях.
СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: 7db6b86aff46 Происхождение Открытые вопросы (3)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Обеспечивает пошаговый обход элементов массивов SOVD в режиме «только для чтения» в диагностических приложениях.

Класс ara::diag::DiagnosticSovdArrayContentElementDataConstIterator предоставляет однонаправленный итератор «только для чтения» для элементов массива в контексте диагностики SOVD ([SWS_DM_02221]). Приложения используют его для пошагового обхода структур данных типа DiagnosticSovdContentElementData с помощью операторов сравнения, разыменования и инкремента ([SWS_DM_02222]). Поскольку все операции специфицированы как noexcept, проверка границ итерации возлагается на вызывающую сторону во избежание неопределенного поведения при недопустимых позициях.

Контекст

Класс ara::diag::DiagnosticSovdArrayContentElementDataConstIterator входит в состав модуля диагностики (diag) платформы AUTOSAR Adaptive Platform ([SWS_DM_02221], AUTOSAR_AP_SWS_Diagnostics §8.60.2 «Class: DiagnosticSovdArrayContentElementDataConstIterator»). Он удовлетворяет стандартным требованиям к сервисно-ориентированной диагностике транспортных средств (Service-Oriented Vehicle Diagnostics, SOVD) и предоставляет константный однонаправленный итератор для последовательных полей данных. Его основная обязанность — инкапсуляция доступа «только для чтения» к отдельным элементам типа DiagnosticSovdContentElementData ([SWS_DM_02222], [SWS_DM_02223]). В роли партнеров по взаимодействию выступают диагностические приложения, которые через заголовочный файл ara/diag/diagnostic_sovd_content_element_data.h анализируют SOVD-совместимое содержимое массивов без возможности модификации базовых структур памяти.

Жизненный цикл

В спецификации класса [SWS_DM_02221] нет открытых конструкторов. Таким образом, инстанцирование итератора обычно выполняется не самим прикладным программным обеспечением, а предоставляется методами контейнера вышестоящего объекта данных. Вопрос Q-a2a94d90c92beb71 (открытый) После создания итератор представляет фиксированную позицию в последовательности массива.

Переход к следующей позиции осуществляется через префиксный оператор инкремента operator++, возвращающий ссылку на сам инкрементированный объект итератора ([SWS_DM_02226]). Что касается параллелизма, все функции-члены класса явно специфицированы как потокобезопасные (thread-safe) (от [SWS_DM_02222] до [SWS_DM_02226]). Таким образом, несколько потоков могут одновременно считывать одну и ту же или разные позиции. Если экземпляр итератора модифицируется путем переключения с помощью operator++, при совместном использовании требуется внешняя синхронизация. Время жизни ссылаемых пользовательских данных, предположительно, строго привязано к времени жизни предоставляющего их контейнера данных. Вопрос Q-743ef89528de7a75 (открытый)

Путь использования

Типичный путь использования соответствует классической идиоме C++ для константных итераторов по коллекции. В начале обхода вызывающая сторона проверяет валидность текущей позиции с помощью оператора неравенства operator!= ([SWS_DM_02225]) или оператора равенства operator== ([SWS_DM_02224]) по сравнению с конечным итератором. Если итератор находится в допустимом диапазоне, приложение обращается к элементу для чтения:

  • Через оператор разыменования operator* ([SWS_DM_02222]) возвращается константная ссылка DiagnosticSovdContentElementData const&.
  • Через оператор «стрелка» operator-> ([SWS_DM_02223]) возвращается константный указатель DiagnosticSovdContentElementData const*, что обеспечивает прямой доступ к методам элемента.

Затем вызывающая сторона перемещает итератор на одну позицию вперед с помощью operator++ ([SWS_DM_02226]) и повторяет проверку позиции до достижения конечного состояния.

Последовательность итерации массива только для чтенияПриложениеIteratorElementDataUse Case: Проверка границы итерацииoperator!=(end)true (допустимый элемент)Use Case: Доступ к данным только для чтенияoperator*()Referenz ermittelnDiagnosticSovdContentElementData const&Use Case: Weiterschaltenoperator++()*this (inkrementierter Iterator)

Диаграмма последовательности: типичный процесс пошаговой итерации по элементам массива SOVD. Источники: [SWS_DM_02222], [SWS_DM_02225], [SWS_DM_02226]

Сценарии ошибок

Интерфейс не определяет специальных кодов ошибок или возвратов статуса в виде ara::core::Result. Все операции специфицированы как безопасные относительно исключений (exception safe) и снабжены спецификатором noexcept (от [SWS_DM_02222] до [SWS_DM_02226]). Во время выполнения исключения C++ не генерируются.

Существенным предварительным условием для вызовов operator* и operator-> является то, что итератор должен быть разыменовываемым. Разыменование недействительного итератора или конечного итератора, предположительно, приводит к неопределенному поведению из-за отсутствия механизмов обработки ошибок. Вопрос Q-9144a319e654f27a (открытый) Вызывающая сторона также обязана гарантировать, что два сравниваемых итератора принадлежат одной и той же последовательности.

Данное руководство было сгенерировано моделью ИИ на основе спецификации AUTOSAR R25-11.

Карта членов

Диаграмма классов

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G nara__diag__DiagnosticSovdArrayContentElementDataConstIterator518 DiagnosticSovdArrayContentElementDataConstIterator + operator!=() + operator*() + operator++() + operator->() + operator==()

Подробный вид

Выберите элемент в оглавлении.

Операторы

operator!= функция

Not equal operator.

auto operator!= (DiagnosticSovdArrayContentElementDataConstIterator const &other) noexcept -> bool;
operator* функция

Dereference operator.

auto operator* () noexcept -> DiagnosticSovdContentElementData const &;
operator++ функция

Increment operator.

auto operator++ () noexcept -> DiagnosticSovdArrayContentElementData ConstIterator &;
operator-> функция

Dereference operator.

auto operator-> () noexcept -> DiagnosticSovdContentElementData const *;
operator== функция

Equal operator.

auto operator== (DiagnosticSovdArrayContentElementDataConstIterator const &other) noexcept -> bool;

Документация методов

функция operator!= [SWS_DM_02225] Upstream: RS_Diag_04260

auto operator!= (DiagnosticSovdArrayContentElementDataConstIterator const &other) noexcept -> bool;

Not equal operator.

Header-Datei#include "ara/diag/diagnostic_sovd_content_element_data.h"
Scopeclass ara::diag::DiagnosticSovdArrayContentElementDataConstIterator
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
otherThe other iterator to test equality with

Rückgabewert

TypBeschreibung
boolTrue if operator are equals, false otherwise

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_02225
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02225@rel:R25-11#9fd2bdda
Content hash
9fd2bdda
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02225
Status: valid/unmigrated Version: rel:R25-11#d81fc3aa Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_02225@rel:R25-11#d81fc3aa
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

функция operator* [SWS_DM_02222] Upstream: RS_Diag_04260

auto operator* () noexcept -> DiagnosticSovdContentElementData const &;

Dereference operator.

Header-Datei#include "ara/diag/diagnostic_sovd_content_element_data.h"
Scopeclass ara::diag::DiagnosticSovdArrayContentElementDataConstIterator
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
DiagnosticSovdContentReturn a reference to the DiagnosticSovdContentElementData ElementData const

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_02222
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02222@rel:R25-11#eeeaac58
Content hash
eeeaac58
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02222
Status: valid/unmigrated Version: rel:R25-11#6ba06c2c Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_02222@rel:R25-11#6ba06c2c
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

функция operator++ [SWS_DM_02226] Upstream: RS_Diag_04260

auto operator++ () noexcept -> DiagnosticSovdArrayContentElementData ConstIterator &;

Increment operator.

Header-Datei#include "ara/diag/diagnostic_sovd_content_element_data.h"
Scopeclass ara::diag::DiagnosticSovdArrayContentElementDataConstIterator
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
DiagnosticSovdArrayContentElementDataConstIteratorReference to the incremented iterator

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_02226
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02226@rel:R25-11#29ba3205
Content hash
29ba3205
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02226
Status: valid/unmigrated Version: rel:R25-11#da77b20e Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_02226@rel:R25-11#da77b20e
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

функция operator-> [SWS_DM_02223] Upstream: RS_Diag_04260

auto operator-> () noexcept -> DiagnosticSovdContentElementData const *;

Dereference operator.

Header-Datei#include "ara/diag/diagnostic_sovd_content_element_data.h"
Scopeclass ara::diag::DiagnosticSovdArrayContentElementDataConstIterator
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
DiagnosticSovdContent Return a pointer to the DiagnosticSovdContentElementData ElementData const *

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_02223
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02223@rel:R25-11#948df34c
Content hash
948df34c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02223
Status: valid/unmigrated Version: rel:R25-11#54f084a2 Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_02223@rel:R25-11#54f084a2
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

функция operator== [SWS_DM_02224] Upstream: RS_Diag_04260

auto operator== (DiagnosticSovdArrayContentElementDataConstIterator const &other) noexcept -> bool;

Equal operator.

Header-Datei#include "ara/diag/diagnostic_sovd_content_element_data.h"
Scopeclass ara::diag::DiagnosticSovdArrayContentElementDataConstIterator
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
otherThe other iterator to test equality with

Rückgabewert

TypBeschreibung
boolTrue if operator are equals, false otherwise

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_02224
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02224@rel:R25-11#4bc90427
Content hash
4bc90427
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02224
Status: valid/unmigrated Version: rel:R25-11#26232151 Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_02224@rel:R25-11#26232151
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill