Windows Phone 8开发内部解析与Windows 8融合
1. Windows Runtime在C++中的使用
在开发中,Windows Runtime能够投影到多种语言,这一特性的关键价值在于,开发者可以先在一种语言中学习框架,然后无缝地将所学知识应用到不同的环境中。此前我们展示了从C#使用Windows Runtime API的示例,实际上,同样的API也可以从C++代码中调用并获得相同的结果。
从基于.NET的语言使用Windows Runtime API转换到C++时,主要的区别在于异步方法的调用方式。虽然Windows Runtime框架大量使用异步操作,使得许多开发者在熟悉框架的同时学会了使用async/await模式,但要明白这两者是完全不同的。async/await关键字是.NET 4.5编译器的特性,恰好与Windows Runtime框架推广的异步API模型很好地集成,但它们并非框架本身的一部分。
下面以一个示例来说明在C++代码中如何使用异步方法。示例中的DistanceSpeaker解决方案使用了两个异步的Windows Runtime框架:Windows.Devices.Geolocation中的地理定位API和Windows.Phone.Speech.Synthesis中的语音合成API。该应用会确定设备的当前位置,计算该点到华盛顿州雷德蒙德的距离(以英里为单位),然后使用语音合成器读出距离。
以下是相关代码:
#include <windows.foundation.h>
namespace DistanceSpeakerWindo
超级会员免费看
订阅专栏 解锁全文
12

被折叠的 条评论
为什么被折叠?



