溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

C++的Rust組合與集成知識分析

發(fā)布時間:2021-11-29 14:42:25 來源:億速云 閱讀:167 作者:iii 欄目:大數(shù)據(jù)

本篇內(nèi)容介紹了“C++的Rust組合與集成知識分析”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

C++工程師的Rust遷移之道 組合與集成

#rust

  • 組合與繼承 上

  • 組合與繼承 中

C++中的多態(tài)面臨的問題

  1. 在使用靜態(tài)派發(fā)時,由于完全依賴重載,當(dāng)編寫對應(yīng)的代碼時,很難保證你的類完整實(shí)現(xiàn)了調(diào)用代碼的要求,再加上了深度模版的使用,導(dǎo)致出錯信息非常難以閱讀;為了解決這個問題C++標(biāo)準(zhǔn)委員會在C++ 20標(biāo)準(zhǔn)中加入了concepts的概念,它可以顯式的提出約束,使用的例子可以參見上一篇文章 https://zhuanlan.zhihu.com/p/75755125,而更多的信息,大家可以參見cppreference[2];

  2. 在使用動態(tài)派發(fā)時,由于vptr存在,它會破壞對象本身的內(nèi)存結(jié)構(gòu),當(dāng)你的對象還需要與其他庫(特別是C語言編寫的庫)進(jìn)行交互的時候,內(nèi)存結(jié)構(gòu)就會稱為一個顯著的問題;

  3. 由于C++是一個非常成熟的語言,而concept又是在下一個標(biāo)準(zhǔn)中才會加入進(jìn)來的概念,所以對于靜態(tài)派發(fā)和動態(tài)派發(fā)的約束是完全不一樣的語法,而且對于同樣的約束,如果我們需要同時使用靜態(tài)和動態(tài)派發(fā)的話,必須寫兩遍(一遍虛基類,一遍concepts)。

對于上述提到的3個問題,在Rust中有一個統(tǒng)一的解決方案,那就是trait系統(tǒng), 更多內(nèi)容請看正文。

Read More

grin 一個 MimbleWimble 協(xié)議的最小實(shí)現(xiàn)

#crate

MimbleWimble是一個區(qū)塊鏈隱私保護(hù)的格式和協(xié)議,是一種可以防止區(qū)塊鏈泄露個人信息的技術(shù),名字來源于《哈利波特》。grin是MimbleWimble協(xié)議的最小實(shí)現(xiàn)。

Read More

amethyst 面向數(shù)據(jù)和數(shù)據(jù)驅(qū)動的游戲引擎

#crate

amethyst 是一種數(shù)據(jù)驅(qū)動和面向數(shù)據(jù)的游戲引擎,旨在盡可能快速且可配置,文檔寫的很詳細(xì),下面是由它實(shí)現(xiàn)的兩個項(xiàng)目:

  • Evoli - 3D, ecosystem simulator

  • Space Menace - 2D, action platformer

Read More

tracing 更新

#crate

tracing 是一個框架,用于檢測Rust程序以收集基于事件的結(jié)構(gòu)化診斷信息。跟蹤由Tokio項(xiàng)目維護(hù),但不需要使用tokio運(yùn)行時。instrument 屬性提供了一種向函數(shù)添加跟蹤跨度的簡便方法。使用 instrument 注釋的函數(shù)將在每次調(diào)用函數(shù)時創(chuàng)建并輸入具有該函數(shù)名稱的span,并使用fmt::Debug將該函數(shù)的參數(shù)記錄為字段。

“C++的Rust組合與集成知識分析”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI