DEENESPTFRRUARHIKOZHNL

구조체 ara::core::in_place_t

[SWS_CORE_04011] Upstream: RS_AP_00130

struct in_place_t {...};

Denote an operation to be performed in-place. An instance of this type can be passed to certain constructors of ara::core::Optional to denote the intention that construction of the contained type shall be done in-place, i.e. without any copying taking place.

Header-Datei#include "ara/core/utility.h"
Forwarding-Header#include "ara/core/core_fwd.h"
Scopenamespace ara::core

사용자 가이드AI 생성

복사 작업 없이 Optional과 같은 컨테이너에서 인플레이스 생성을 식별하기 위한 태그 타입 역할을 합니다.
AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: 011b812476bc 출처 열린 질문 (1)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

복사 작업 없이 Optional과 같은 컨테이너에서 인플레이스 생성을 식별하기 위한 태그 타입 역할을 합니다.

구조체 ara::core::in_place_t은(는) 복사 작업 없이 현장에서 객체를 직접 생성해야 하는 작업을 식별하기 위한 태그 타입 역할을 합니다 [SWS_CORE_04012]. 인스턴스는 일반적으로 인수를 포함된 타입의 생성자로 직접 전달하기 위해 ara::core::Optional와(과) 같은 래퍼 클래스의 생성자에 전달됩니다. 생성은 예외 안전 및 noexcept(으)로 정의된 명시적 기본 생성자를 통해 수행됩니다 [SWS_CORE_04012]. 이 타입은 무상태이므로 오류 시나리오나 복잡한 라이프사이클 단계가 존재하지 않습니다.

컨텍스트

구조체 ara::core::in_place_t은(는) AUTOSAR Adaptive Platform의 core 모듈 내에 있는 태그 타입이며, 헤더 파일 #include "ara/core/utility.h"을(를) 통해 제공됩니다 [SWS_CORE_04012]. 현대 C++ 인터페이스에서 이러한 태그 타입은 객체 생성 시 오버로드를 위한 의미론적 제어 요소 역할을 합니다. ara::core::in_place_t의 주요 역할은 작업을 인플레이스 생성으로 명시적으로 선언하는 것입니다. 이 타입의 인스턴스는 컨테이너에 유지되는 객체를 현장에서 직접 생성하겠다는 명확한 의도를 알리기 위해 ara::core::Optional와(과) 같은 래퍼 클래스의 특수화된 생성자에 전달됩니다.

이 메커니즘을 통해 컨테이너 외부에 임시 객체를 생성한 후 복사 또는 이동 생성자를 통해 컨테이너로 전송해야 할 필요성이 사라집니다. 따라서 이 클래스는 호출하는 애플리케이션 코드와 둘러싸는 타입의 초기화 루틴 사이에서 매개체 역할을 하며, 이를 통해 특히 안전 필수 애플리케이션의 맥락에서 리소스 관리 및 효율성에 중요한 의미를 갖습니다.

수명 주기

ara::core::in_place_t의 라이프사이클은 미니멀하게 설계되었습니다. 이 클래스는 noexcept(으)로 지정된 명시적 기본 생성자 explicit in_place_t() noexcept = default;을(를) 선언합니다 [SWS_CORE_04012]. 무상태 태그 구조체로서 이 타입은 멤버 변수나 동적 리소스를 일절 보유하지 않습니다. Interpretation: 이 구조체는 컴파일러의 오버로드 확인을 위한 타입 마커 역할만 수행하며 런타임 데이터를 캡슐화하지 않습니다. 질문 Q-2fd481aaddfdfbf3 (열림) 따라서 복잡한 상태나 서로 다른 수명 단계 간의 전이가 존재하지 않습니다.

ara::core::in_place_t의 인스턴스는 일반적으로 호출 지점에서 임시 값으로 직접 생성되어 대상 메서드로 즉각 전달됩니다. 관리되는 리소스에 대한 소유권 관계가 발생하지 않으며, 객체 소멸 시 어떠한 정리 작업도 발생하지 않습니다. 이 타입은 완전히 불변이며 무상태이므로 인스턴스화와 소멸은 본질적으로 동시성에 안전하며 동기화 메커니즘 없이 여러 스레드에 걸쳐 안전하게 사용할 수 있습니다.

사용 경로

ara::core::in_place_t의 일반적인 사용 경로는 생성 인수를 ara::core::Optional와(과) 같은 래퍼에 직접 전달하는 데 중점을 둡니다. 먼저 애플리케이션은 필요한 헤더 파일 #include "ara/core/utility.h"을(를) 포함합니다 [SWS_CORE_04012]. ara::core::Optional 객체를 선언하거나 초기화할 때 개발자는 ara::core::in_place_t의 인스턴스를 생성자의 첫 번째 인수로 전달합니다. 이어지는 인수들은 Optional에 보관될 타입의 생성자 매개변수 목록과 정확히 일치합니다.

태그를 평가함으로써 컨테이너 생성자는 내부적으로 내부 메모리 영역에 있는 페이로드 데이터 객체의 적절한 생성자를 직접 호출합니다. 이는 불필요한 복사 및 이동 작업을 방지하며, 특히 비용이 많이 드는 복사 작업을 수반하거나 복사 생성자가 삭제된 타입의 경우에 유리합니다. 대상 생성자가 성공적으로 호출된 후에는 태그의 목적이 완전히 달성되며, 임시 태그 인스턴스는 자동으로 소멸합니다.

오류 시나리오

오류 시나리오 및 예외 안전성과 관련하여 ara::core::in_place_t은(는) 완전히 오류 없이 동작합니다. 사양에 따르면 기본 생성자는 noexcept(으)로 선언되어 있으며 exception safe 등급을 가집니다 [SWS_CORE_04012]. 기본 생성자 호출을 위한 사전 조건은 존재하지 않으며, 오류 코드나 C++ 예외가 발생하지 않습니다.

인플레이스 생성 중에 오류가 발생하는 경우, 그 원인은 ara::core::in_place_t에 있는 것이 아니라 전적으로 둘러싸인 페이로드 데이터 타입의 생성자에 있습니다. 유효하지 않은 매개변수로 인해 해당 생성자가 예외를 발생시키거나 오류 상태를 보고하는 경우, 둘러싸는 컨테이너나 대상 타입의 정의된 오류 처리 메커니즘이 적용됩니다. in_place_t 자체에는 오류 발생 시 사후 조건이나 정리 작업이 필요하지 않습니다.

이 클래스 가이드는 core 모듈에 대한 AUTOSAR Adaptive 사양을 기반으로 하며 자동으로 큐레이션되었습니다.

UML 클래스 다이어그램

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

G nara__core__in_place_t356 «struct» in_place_t + in_place_t()

생성자 및 소멸자

in_place_t 함수

Default constructor

explicit in_place_t () noexcept=default;

메서드 문서

함수 in_place_t [SWS_CORE_04012] Upstream: RS_AP_00130

explicit in_place_t () noexcept=default;

Default constructor

Header-Datei#include "ara/core/utility.h"
Scopestruct ara::core::in_place_t
Exception-Sicherheitexception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_04012
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_04012@rel:R25-11#4e869b55
Content hash
4e869b55
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_04012
Status: valid/unmigrated Version: rel:R25-11#60e4f564 Versionshistorie & Revisions (1 transition, 8 revision)
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_04012@rel:R25-11#60e4f564
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#77f3b9952026-09-30
  • R19-11rel:R19-11#63f31e082026-10-14
  • R20-11rel:R20-11#388fe03d2026-10-14
  • R21-11rel:R21-11#388fe03d2026-10-14
  • R22-11rel:R22-11#5a0e98052026-10-14
  • R23-11rel:R23-11#b9ae75262026-10-14
  • R24-11rel:R24-11#5501994f2026-10-14
  • R25-11rel:R25-11#60e4f5642026-10-14 active
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