Microsoft (주로 Herb Sutter )는 WinRT를 C ++ / CX와 함께 사용하여 WinRT를 응용 프로그램의 경계에 유지하고 응용 프로그램의 핵심을 표준 ISO C ++로 작성하도록 권장합니다.
이식성이 뛰어난 응용 프로그램을 작성하고 있으므로 핵심 기능은 표준 C ++로 작성되었으며 이제 C ++ / CX를 사용하여 Metro 스타일 프런트 엔드를 작성하려고합니다. 그러나이 접근법에 약간의 문제가 있습니다. 예를 들어, 사용자 정의 C ++ 유형의 벡터를 XAML ListView 컨트롤에 푸시하려면 사용자 정의 유형을 WinRT 참조 / 값 유형으로 래핑하여에 저장해야합니다 Vector^
. 이 접근법을 사용하면 필자는 C ++ 클래스의 대부분을 WinRT 클래스로 래핑하는 것이 불가피합니다.
C ++로 이식 가능한 기본 응용 프로그램을 작성하려고 시도한 것은 이번이 처음입니다. 이와 같은 경계를 따라 WinRT를 유지하는 것이 실제로 실용적입니까? 플랫폼 별 경계가있는 이러한 유형의 휴대용 코어를 어떻게 처리 할 수 있습니까?