다음을 통해 공유


함수 반환 값

함수 반환 값은 클라이언트 애플리케이션에서 데이터를 제공하지 않으므로 [out] 전용 매개 변수와 유사합니다. 그러나 다르게 관리됩니다. [out] 전용 매개 변수와 달리 포인터일 필요는 없습니다. 원격 프로시저는 참조 포인터 및 캡슐화되지 않은 공용 구조체를 제외한 모든 유효한 데이터 형식을 반환할 수 있습니다.

그러나 복합 데이터 형식에 대한 반환 값 대신 [out] 매개 변수를 사용하는 것이 좋습니다. 복잡한 데이터 형식을 반환하는 동안 MIDL 컴파일러는 /Os 모드 스텁을 생성합니다. 따라서 /strong에서 제공한 모든 최근 오류 검사 정보가 손실됩니다.

포인터 형식인 함수 반환 값은 midl_user_allocate 호출을 사용하여 클라이언트 스텁에 의해 할당됩니다. 따라서 고유 또는 전체 포인터 특성만 포인터 함수 반환 형식에 적용할 수 있습니다.