C++/WinRT

De Wikipedia, la enciclopedia libre
C++/WinRT
Parte de Windows App SDK
Información general
Tipo de programa Biblioteca
Desarrollador Kenny Kerr
Lanzamiento inicial 23 de junio de 2015 (8 años, 10 meses y 16 días)
Licencia Licencia MIT
Información técnica
Programado en C++
Versiones
Última versión estable 2.0.230225.1 / 25 de febrero de 2023 (1 año, 2 meses y 12 días) ()
Enlaces

C++/WinRT es una librería en C++ estándar (C++17) que permite el acceso a la plataforma Windows Runtime y las nuevas APIs de Windows. Fueron creadas originalmente por Kenny Kerr[1]​ en 2015 e incluidas como parte del Microsoft Windows SDK en la versión 10.0.17134.0 (Windows 10, versión 1803).

Estas librerías son la manera recomendada por Microsoft para consumir y acceder a las APIs de Windows Runtime en C++, sustituyendo así tanto a las librerías Windows Runtime C++ Template Library (WRL), como a la extensión del lenguaje C++/CX.

Introducción[editar]

Las APIs de programación de WinRT (Windows Runtime) están basadas en COM (Component Object Model) y han sido diseñadas para ser consumidas a través de proyecciones en distintos lenguajes (p.e. C# o Javascript). El objetivo de cada proyección es ocultar los detalles de COM y proporcionar una experiencia de programación más natural adaptada a cada lenguaje y sus características.

Las librerías C++/WinRT son una proyección al lenguaje C++ (concretamente C++17). Están implementadas como librerías basadas en ficheros de cabecera (.h) y diseñadas para poder acceder y consumir las APIs de Windows Runtime usando cualquier compilador compatible con C++17.

Programa Hola mundo[editar]

Un programa mínimo de ejemplo Hola mundo escrito en C++/WinRT podría ser el siguiente:

// main.cpp
#include <winrt/Windows.Foundation.h>

using namespace winrt;
using namespace Windows::Foundation;

int main()
{
    winrt::init_apartment();
    Uri contosoUri{ L"http://www.contoso.com" };
    Uri combinedUri = contosoUri.CombineUri(L"products");
}

Como puede verse, se trata de código C++ estándar, en el que se utilizan de manera directa tanto tipos como funciones de la API de Windows Runtime.

Escenarios de uso[editar]

A la hora de desarrollar aplicaciones, tres son los principales escenarios con los que podemos sacar ventaja del uso de C++/WinRT:

  • Consumir APIs y tipos de Windows Runtime
  • Producir APIs y tipos de Windows Runtime
  • Desarrollo de aplicaciones XAML


Véase también[editar]

Referencias[editar]

Enlaces externos[editar]