모든 AUTOSAR 예외의 기본 클래스 역할을 하며 평가를 위해 스레드 안전한 오류 코드를 캡슐화합니다.
AI 생성미검증모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: d4eaa8466f70출처열린 질문 (1)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문
모든 AUTOSAR 예외의 기본 클래스 역할을 하며 평가를 위해 스레드 안전한 오류 코드를 캡슐화합니다.
ara::core::Exception 클래스는 Adaptive Platform의 모든 예외 유형에 대한 공통 기본 클래스 역할을 하며 표준화된 C++ 예외 계층 구조에 ErrorCode을(를) 포함합니다[SWS_CORE_00611]. 오류 발생 시, Error() 또는 파생된 표준 메서드 what()을(를) 통해 평가할 수 있는 핸들러로 이 오류 코드를 스레드 안전하게 전달합니다[SWS_CORE_00613]. 모든 연산은 엄격하게 예외 안전하며 noexcept(으)로 선언되어 있습니다. 파생 유형에서 의도치 않은 객체 슬라이싱(Object Slicing)을 방지하기 위해 복사 연산은 protected로 구현되어 있습니다.
컨텍스트
ara::core::Exception 클래스는 AUTOSAR Adaptive Platform 내의 모든 예외 유형에 대한 공통 기본 클래스 역할을 합니다. 이 클래스는 C++ 표준 라이브러리의 예외 처리와 AUTOSAR 오류 모델 간의 가교 역할을 합니다. 한편으로는 std::exception에서 public으로 파생되어 해당 가상 멤버 함수 what()[SWS_CORE_00612]을(를) 오버라이드하고, 다른 한편으로는 ara::core::ErrorCode 유형의 포함된 오류 객체를 전달합니다[SWS_CORE_00611], [SWS_CORE_00613].
ara::core::Exception의 주된 책임은 예외 발생 시 호출 경계를 넘어 오류 정보를 구조화된 방식으로 제공하는 것입니다. 해석: 이 클래스는 플랫폼의 도메인 특화 예외 클래스를 위한 공통 루트로 설계되었을 것으로 보입니다. 파생 인스턴스에서 의도치 않은 객체 슬라이싱(Object Slicing)을 방지하기 위해 복사 연산은 protected(으)로 지정되어 있습니다[SWS_CORE_00614], [SWS_CORE_00618]. 질문 Q-20ffec7888b9e724 (열림)
ara::core::Exception의 생성은 생성자 [SWS_CORE_00611] 호출 시 오류 코드를 명시적으로 지정해야 합니다. 이 생성자는 noexcept(으)로 정의되어 있으므로 그 자체로는 예외를 발생시키지 않습니다.
소유권 관계 및 복사 가능성은 엄격한 보호 규칙을 따릅니다. 복사 생성자 [SWS_CORE_00618]과(와) 복사 할당 연산자 [SWS_CORE_00614]은(는) 모두 접근 한정자 protected을(를) 가집니다. 이는 다형성 서브클래스가 기본 클래스의 인터페이스를 통해 불완전하게 복사되는 것을 방지합니다. 반면 리소스 이전을 위해 이동 생성자 [SWS_CORE_00615]과(와) 참조 한정자가 있는 이동 할당 연산자 &[SWS_CORE_00616]은(는) public noexcept=default(으)로 제공됩니다.
Return the explanatory string. This function overrides the virtual function std::exception:: what. All guarantees about the lifetime of the returned pointer that are given for std::exception::what are preserved. ≙ std::exception::
Return the explanatory string. This function overrides the virtual function std::exception:: what. All guarantees about the lifetime of the returned pointer that are given for std::exception::what are preserved.
AI 생성미검증모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: 1b4e9bb17f9a출처
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문
ara::core::Exception 클래스의 멤버 함수 what는 발생한 오류 [SWS_CORE_00612]에 대한 설명 문자열을 동기식으로 조회하는 데 사용됩니다. 이 함수는 가상 함수 std::exception::what를 재정의(override)하며 널로 끝나는 문자열(const char*)에 대한 포인터를 반환합니다 [SWS_CORE_00612].
사용 및 수명 주기
이 함수는 전달 매개변수를 받지 않습니다. 반환된 포인터의 유효성과 관련하여 std::exception::what에 적용되는 모든 보장이 그대로 유지됩니다 [SWS_CORE_00612]. 이 함수를 사용하려면 헤더 파일 ara/core/exception.h을 포함해야 합니다 [SWS_CORE_00612].
오류 처리 및 동시성
예외 안전성: 이 연산은 noexcept로 선언되어 있으며 예외 안전(exception safe)으로 명시되어 있습니다. 즉, 자체적으로 예외를 발생시키지 않습니다 [SWS_CORE_00612].
동시성: 실행은 스레드 안전(thread-safe)으로 명시되어 있습니다 [SWS_CORE_00612]. 따라서 병렬 스레드에서 안전하게 호출할 수 있습니다.
gemini-3.8-flash-low· 2026-10-13 · 독일어 원문