DEENESPTFRRUARHIKOZHNL

类 ara::core::Map::value_compare

[SWS_CORE_01419]

class value_compare {...};

As per corresponding usage in [map]

Header-Datei#include "ara/core/map.h"
Forwarding-Header#include "ara/core/core_fwd.h"
Scopeclass ara::core::Map

用户指南人工智能生成

用作基于键比较 Map 的两个值对的函数对象。
AI 生成 未审核 模型: gemini-3.8-flash-medium · 推理强度: medium · 温度: 不可控 · 提示词: a8fa08ca7764 来源 未决问题(3)
译自德文指南gemini-3.8-flash-low · 2026-10-13 · 德文原文

用作基于键比较 Map 的两个值对的函数对象。

辅助类 ara::core::Map::value_compare 用作函数对象,通过使用内部封装的比较谓词 [SWS_CORE_01421],基于键对 Map 的两个值对进行关系比较。实例化主要由上层 Map 结构受保护地执行,而调用方通过调用运算符 operator() 进行求值 [SWS_CORE_01423]。由于根据规范这些操作并非异常安全,因此调用代码必须考虑底层谓词可能抛出的异常。

上下文

辅助类 ara::core::Map::value_compare 在 AUTOSAR Adaptive Platform 的 core 模块中提供了一个函数对象,可借助该对象比较关联表的两个完整键值元素(value_type)。根据规范,该类参考了 C++ 标准库针对 [map] 的成熟行为。其核心任务是使为键排序定义的类型为 Compare 的谓词可应用于完整值对。为此,该类在受保护的成员变量 comp 中封装了该谓词的内部实例 [SWS_CORE_01421]。通过这种方式,value_compare 直接与上层数据结构 ara::core::Map 交互,并对外确保排序或搜索算法能够一致地基于键比较值对。

生命周期

value_compare 的实例化受到严格的访问限制:构造函数 value_compare(Compare c) 具有可见性 protected [SWS_CORE_01422]。解读:由于这种受保护的可见性,推测新实例的创建主要保留给封闭类 ara::core::Map 本身,而普通调用方从 Map 获取现成的函数对象。 问题 Q-f188cfa9cf627a11 (未决)在构造时,该对象接管比较谓词并将其保存在受保护变量 comp [SWS_CORE_01421] 中。它不存在具有复杂状态转换的生命周期;实例在创建后保持不可变的执行状态。对于并发运行,这意味着只要封装的谓词 Compare 无状态或以线程安全方式运行,通过调用运算符进行的并行读访问就是安全的。

使用路径

常规使用路径侧重于通过函数调用运算符 operator() [SWS_CORE_01423] 重复求值值对。该运算符声明为 const 方法,并接受两个对类型为 value_type 的常量元素的引用。解读:在执行时,operator() 访问所传递的两个值对的键部分,并将它们传递给存储在 comp 中的谓词 [SWS_CORE_01421],从而以布尔值形式返回关系结果。 问题 Q-207114486c204301 (未决)下图展示了这一标准化流程:

通过 value_compare 比较两个值对调用方value_comparecompoperator()(x, y)从 x 和 y 中提取键比较键boolesches Ergebnis返回 bool

时序图:通过 operator() 和封装的 comp 谓词进行值比较的流程。来源:[SWS_CORE_01421],[SWS_CORE_01423]

该路径通常应用于需要根据排序顺序检查或遍历 Map 元素的算法中,而无需使用者手动从值对中解引用键。

错误场景

关于鲁棒性与异常处理,需要注意的是,构造函数 [SWS_CORE_01422] 和调用运算符 operator() [SWS_CORE_01423] 均未被指定为异常安全;两者均被明确归类为“not exception safe”。Interpretation: 这在实践中意味着该类本身不封装任何异常处理机制,在复制或执行用户定义谓词 Compare 时引发的异常将直接传播给调用方。 问题 Q-427fd0afbba7bf9e (未决)该规范未为此辅助类定义特定的错误码。因此,正常运行的关键前提条件是传入的谓词 Compare 具有无差错的实例化能力与可执行性,以及传递给 operator() 的 value_type 引用的有效性。

本指南基于 AUTOSAR Adaptive Platform Release R25-11 规范。

成员图

构造函数和析构函数

1

运算符

1

常量

1

类图

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

G nara__core__Map__value_compare839 value_compare + comp + operator()() + value_compare()

详细视图

请在大纲中选择一个条目。

构造函数和析构函数

≙ [map]

ara::core::Map< Key, T, Compare, Allocator >::value_compare::value_ compare (Compare c);

运算符

operator() 函数

≙ [map]

bool ara::core::Map< Key, T, Compare, Allocator >::value_ compare::operator() (const value_type &x, const value_type &y) const;

常量

comp 变量

≙ [map]

Compare ara::core::Map< Key, T, Compare, Allocator >::value_ compare::comp;

方法文档

函数 operator() [SWS_CORE_01423]

bool ara::core::Map< Key, T, Compare, Allocator >::value_ compare::operator() (const value_type &x, const value_type &y) const;

As per corresponding usage in [map]

Header-Datei#include "ara/core/map.h"
Scopeclass ara::core::Map::value_compare
Exception-Sicherheitnot exception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01423
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01423@rel:R25-11#b235ae85
Content hash
b235ae85
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01423
Status: valid/unmigrated Version: rel:R25-11#93dc6198 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_CORE_01423@rel:R25-11#93dc6198
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

函数 value_compare [SWS_CORE_01422]

ara::core::Map< Key, T, Compare, Allocator >::value_compare::value_ compare (Compare c);

As per corresponding usage in [map]

AI 生成 未审核 模型: gemini-3.8-flash-medium · 推理强度: medium · 温度: 不可控 · 提示词: 167c47c6c4cd 来源 未决问题(2)
译自德文指南gemini-3.8-flash-low · 2026-10-13 · 德文原文

使用

嵌套辅助类 ara::core::Map::value_compare 的构造函数 [SWS_CORE_01422] 根据传入的谓词 Compare c 初始化值元素的比较对象。根据规范,其可见性声明为 protected;因此,用户在常规应用程序代码中不会直接构造实例,而是通常通过成员函数 ara::core::Map::value_comp() 获取它们 [SWS_CORE_01489]。

交互与语义

类内部的交互包含以下几个方面:

  • 存储谓词:传入的谓词 c 大概保存在受保护的属性 comp [SWS_CORE_01421] 中。 问题 Q-59027030aa59242e (未决)
  • 求值:随后由 operator() [SWS_CORE_01423] 使用存储的谓词进行求值,以便根据其键比较类型为 value_type 的两个元素。
  • 包含头文件:声明通过头文件 #include "ara/core/map.h" 提供。

错误处理与限制

规范明确将该函数归类为 not exception safe [SWS_CORE_01422]。未为该构造函数定义特定错误码、DET 或 DEM 报告。此外,由于受保护的可见性(protected),调用方不得在派生上下文之外进行直接实例化。

本文本由 AI 创建,且完全基于 AUTOSAR R25-11 的规范数据。

实现者指南即将推出(复杂度 I1)

Header-Datei#include "ara/core/map.h"
Scopeclass ara::core::Map::value_compare
Exception-Sicherheitnot exception safe
Sichtbarkeitprotected

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

Record
AUTOSAR/AP/record/SWS_CORE_01422
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01422@rel:R25-11#240fdcfc
Content hash
240fdcfc
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01422
Status: valid/unmigrated Version: rel:R25-11#2d619be5 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_CORE_01422@rel:R25-11#2d619be5
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

常量 / 变量文档

变量 comp [SWS_CORE_01421]

Compare ara::core::Map< Key, T, Compare, Allocator >::value_ compare::comp;

As per corresponding usage in [map]

Header-Datei#include "ara/core/map.h"
Scopeclass ara::core::Map::value_compare
Symbolcomp
TypCompare
Sichtbarkeitprotected

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

Record
AUTOSAR/AP/record/SWS_CORE_01421
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01421@rel:R25-11#73db6e3e
Content hash
73db6e3e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01421
Status: valid/unmigrated Version: rel:R25-11#d66f4d5d 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_CORE_01421@rel:R25-11#d66f4d5d
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