【发布时间】:2021-01-06 10:23:21
【问题描述】:
我正在将 C++/CX 应用程序移植到 C++/WinRT 核心应用程序。
我在此链接中找到了一个有用的示例代码 (Simple3DGameDX)。
https://github.com/microsoft/Windows-universal-samples/tree/master/Samples/Simple3DGameDX/cppwinrt
并且它的 Suspending 方法的返回类型是 winrt::fire_and_forget。 但是在 C++/CX 中的另一个例子,它的 Suspending 方法的返回类型是 void。
为什么这个返回类型在 C++/WinRT 中不是 void? 这有什么作用?
C++/WinRT
winrt::fire_and_forget OnSuspending(IInspectable const& /* sender */, SuspendingEventArgs const& args)
C++/CX
void OnSuspending(Object^ Sender, SuspendingEventArgs^ Args)
【问题讨论】:
-
如果你熟悉 C#,fire_and_forget 就像 C# 中的“async void”作为返回类型。该方法不返回任务,但您可以在其中“等待...”。
-
如果答案已经解决了您的问题,请mark它被接受