• <nav id="9ieki"></nav>
      1. 
        <ruby id="9ieki"></ruby>
            Win10系統 - Win10系統官方網站

            Win10 SDK Preview Build 17709現已可供下載



            微軟剛剛宣布發布Win10 SDK預覽版17709.除了通常的API更改外,此版本還附帶了一些針對C ++ / WinRT的更新和修復。以下是在您的計算機上試用SDK之前需要了解的內容。

             

            C ++ / WinRT更新

            此更新為C ++ / WinRT引入了許多改進和修復。值得注意的是,它引入了構建C ++ / WinRT的能力,而不依賴于Windows SDK。這對OS開發人員來說并不是特別有趣,但即使在OS repo中它也提供了好處,因為它本身并不包含任何Windows頭文件。因此,開發人員通常會無意中拉入更少或沒有依賴關系。這也意味著C ++ / WinRT開發人員必須防范的宏數量大幅減少。刪除對Windows標頭的依賴意味著C ++ / WinRT更易于移植并符合標準,并進一步加強了我們的努力,使其成為交叉編譯器和跨平臺庫。這也意味著C ++ / WinRT標頭永遠不會受到宏的破壞。如果您以前依賴C ++ / WinRT來包含各種Windows標頭,那么您現在必須自己包含它們。最好包含您明確依賴的任何標頭,而不是依賴其他庫來為您包含它們。

            強調

            支持get_strong和get_weak來創建委托:此更新允許開發人員在創建指向成員函數的委托時使用get_strong或get_weak而不是raw this指針。

            添加異步取消回調:C ++ / WinRT的協程支持最常請求的功能是添加了取消回調。

            簡化期望IBuffer參數的API的使用:此更新使用C ++標準庫容器使用的相同數據命名約定提供對IBuffer實現后面的數據的直接訪問。

            一致性:改進了對Clang和Visual C ++更嚴格的一致性模式的支持。

            改進的代碼生成:各種改進,以減少代碼大小,改進內聯,并優化工廠緩存。

            刪除不必要的遞歸:當命令行引用文件夾而不是特定的winmd時,cppwinrt將不再遞歸搜索winmd文件。它會導致操作系統構建中出現性能問題,并且當開發人員無意中導致cppwinrt消耗的winmds超出預期時,可能會導致難以診斷的使用錯誤。 cppwinrt編譯器現在還可以更智能地處理重復項,使其更容易抵御用戶錯誤和格式錯誤的winmd文件。

            在base.h中聲明WINRT_CanUnloadNow和WINRT_GetActivationFactory:調用者不需要直接聲明它們。他們的簽名也發生了變化,相當于一個突破性的變化。聲明減輕了這種變化的大部分痛苦。由于C ++ / WinRT不再依賴于Windows標頭而且此更改消除了對Windows標頭中的類型的依賴性,因此必須進行更改。

            硬化智能指針:當移動分配新值時,事件revokers沒有撤銷。這讓我仔細看看智能指針類,我注意到他們沒有可靠地處理自我指派。這源于其他大多數人都依賴的com_ptr類模板。我修復了com_ptr并更新了事件revokers以正確處理移動語義,以確保它們在賦值時撤銷。句柄類模板也通過刪除隱式構造函數來加強,這使得編寫錯誤代碼變得容易。這也將操作系統中的錯誤轉換為此PR中修復的編譯器錯誤。

            突破性變化

            默認情況下禁用對非WinRT接口的支持。要啟用,只需在任何C ++ / WinRT標頭之前#include <unknwn.h>。

            winrt :: get_abi(winrt :: hstring)現在返回void *而不是HSTRING。需要HSTRING ABI的代碼可以簡單地使用static_cast。

            winrt :: put_abi(winrt :: hstring)返回void **而不是HSTRING *。需要HSTRING ABI的代碼可以簡單地使用reinterpret_cast。

            HRESULT現在被預測為winrt :: hresult。如果你需要進行類型檢查或支持類型特征,需要HRESULT的代碼可以簡單地執行static_cast,但只要首先包含<unknwn.h>,它就可以轉換。

            GUID現在被預測為winrt :: guid。使用GUID參數實現API的代碼必須使用winrt :: guid,但只要首先包含<unknwn.h>,它就可以轉換。

            WINRT_CanUnloadNow和WINRT_GetActivationFactory的簽名已更改。代碼不能聲明這些函數,而是包括winrt / base.h以包含它們的聲明。

            winrt :: handle構造函數現在是顯式的。分配原始句柄值的代碼必須調用attach方法。

            winrt :: clock :: from_FILETIME已被棄用。代碼應該使用winrt :: clock :: from_file_time。

            使用“ABI”命名空間中的類型生成SDK標頭的已知問題在此版本中仍然存在,并且Microsoft有一個解決方法。


            人妻精品久久久久中文字幕,免费无码又爽又刺激高潮视频,亚洲成a人片在线观看无码变态,a级国产乱理伦片在线播放