A type holding a formatting hint. The interpretation of precision depends on fmt: For integral types (i.e. Fmt::kDec, Fmt::kOct, Fmt::kHex, Fmt::kBin), precision is interpreted as the minimum number of digits to output, similar to e.g. std::printf("%.7d"). For the floating-point specifiers Fmt::kDecFloat, Fmt::kEngFloat and Fmt::kHexFloat, precision denotes the exact number of digits to be shown after the decimal point; for Fmt::kAutoFloat, precision denotes the number of significant digits to be shown according to the rules of the std::printf "%g" specifier. If fmt is Fmt::kDefault, the precision field is ignored, and an implementation-defined formatting is applied. For integral types, if precision is 0, it is interpreted the same as if it was 1. For convenience, there are helper functions to create specific instances of this struct. The helper functions should be used instead of creating instances manually.
AI 생성미검증모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: ae5714d3cea4출처열린 질문 (2)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문
로그 값 출력 시 표현 형식 및 정밀도를 제어하기 위한 서식 지정 힌트 역할을 합니다.
구조체 ara::log::Format은(는) 로깅 시스템에서 서식 지정 힌트 역할을 하며 서식 지정자 fmt([SWS_LOG_00225])과 정밀도 지정 precision([SWS_LOG_00226])을 묶습니다. 인스턴스는 가급적 제공된 헬퍼 함수를 통해 생성되어야 하며, precision의 평가는 서식 유형에 따라 정수의 경우 최소 자릿수와 부동 소수점 수의 경우 소수점 이하 자릿수 사이를 구분합니다. 정수형 타입에서는 0의 정밀도가 1과 동일하게 처리되는 반면, Fmt::kDefault 아래의 필드는 완전히 무시됩니다.
컨텍스트
데이터 구조체 ara::log::Format은(는) 서식화된 값을 출력하기 위한 서식 지정 힌트로서 AUTOSAR Adaptive Platform의 로깅 프레임워크에서 사용됩니다. 이를 위해 열거형 타입 Fmt([SWS_LOG_00225])의 서식 지정 fmt 및 std::uint16_t([SWS_LOG_00226])로서 연관된 정밀도 precision라는 두 가지 핵심 속성을 묶습니다. 상호 작용 파트너는 로깅 모듈의 출력 컴포넌트 및 서식 지정 스트림과 서식화된 텍스트 출력이 포함된 로그 메시지를 생성하는 애플리케이션 로직입니다. 해석: 사양에 언급된 인스턴스화 헬퍼 함수는 표준화된 서식 지정을 제공하기 위해 모듈 ara::log에 직접 위치할 것으로 추정됩니다. 질문 Q-1c465e69c99359fa (열림)
수명 주기
최종 데이터 구조체(struct Format final)로서 ara::log::Format은(는) 내부 상태 머신이나 복잡한 단계 전환을 가지지 않습니다. 비록 속성들이 공개 변수([SWS_LOG_00225], [SWS_LOG_00226])(으)로 선언되어 있지만, 사양에서는 인스턴스를 수동으로 생성하지 말고 대신 제공된 헬퍼 함수를 사용할 것을 명시적으로 요구합니다. 인스턴스는 일반적으로 복사 또는 참조를 통해 로그 스트림으로 전달되는 수명이 짧은 값 객체입니다. 해석: 구조체에 내부 동기화가 없으므로, 스레드 경계를 넘는 복사 및 동시 읽기 접근은 스레드에 안전하지만 변경 가능한 접근은 외부에서 동기화되어야 할 것으로 보입니다. 질문 Q-bd0f1147e9472c19 (열림)
사용 경로
일반적인 사용법에는 서식 지정자 fmt([SWS_LOG_00225])의 정의 및 원하는 정밀도 precision([SWS_LOG_00226]) 지정이 포함됩니다. precision의 평가는 fmt에서 선택된 유형을 따릅니다:
정수형 타입:Fmt::kDec, Fmt::kOct, Fmt::kHex 및 Fmt::kBin의 경우 precision은(는) std::printf("%.7d")을(를) 통한 서식 지정과 유사하게 출력할 최소 자릿수를 나타냅니다.
고정 소수점 및 지수 표현을 갖는 부동 소수점 타입:Fmt::kDecFloat, Fmt::kEngFloat 및 Fmt::kHexFloat의 경우 precision은(는) 소수점 이하의 정확한 자릿수를 정의합니다.
자동 부동 소수점 표현:Fmt::kAutoFloat에서 precision은(는) std::printf 내 서식 지정자 %g의 규칙에 따라 유효 자릿수를 정의합니다.
기본 서식 지정:fmt이(가) Fmt::kDefault 값을 가질 경우 precision의 지정은 무시되며 구현에 따른 서식 지정이 적용됩니다.
이 구조체는 오류 코드나 예외를 정의하지 않으며, 경계 케이스는 대신 결함 허용적이고 결정론적으로 처리됩니다. 정수 서식 식별자(Fmt::kDec, Fmt::kOct, Fmt::kHex, Fmt::kBin)의 경우 빈 출력을 방지하기 위해 precision = 0([SWS_LOG_00226]) 값은 1 값과 의미상 동일하게 평가됩니다. fmt이(가) Fmt::kDefault([SWS_LOG_00225])(으)로 설정된 경우 precision에 설정된 값은 오류 상태로 이어지지 않고 조용히 폐기됩니다.
이 가이드는 AUTOSAR Adaptive Platform R25-11의 로깅 모듈 사양 요구사항을 기반으로 합니다.
UML 클래스 다이어그램
Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.
gemini-3.8-flash-low· 2026-10-13 · 독일어 원문