比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > Filecoin > Info

探究新的 Solidity 0.8 版本_SOL

Author:

Time:1900/1/1 0:00:00

*譯文出自:登鏈翻譯計劃

*譯者:翻譯小組

*校對:Tiny熊

我們離Solidity1

}contractSolidity08{functiontest()externalpurereturns(uint256){//不使用SafeMath,返回type(uint256)

returnx;}}

2.無效的操作碼被還原取代

到目前為止,某些操作會導致INVALID操作碼的執行。這個操作碼的問題是,它消耗掉所有剩余的Gas。這顯然是不好的且沒必要。為什么要浪費Gas,把它捐給礦工?

更多細節,在這里查看revert和assert的區別。

現在Solidity使用revert操作碼。為了區分常規revert和系統內部錯誤,Solidity在返回數據前加上一個標識符:

上周以太坊非法流量創下年度新高:金色財經報道,Chainaanalysis追蹤的數據顯示,上周幾天已知的非法流量占以太坊總流量的百分比達到近 2%。7月30日至8月5日期間,該指標波動在1.7%至1.82%之間,然后于8月6日恢復到正常水平。

目前尚不清楚到底是什么原因導致了價格飆升,但這與去中心化交易所Curve Finance的被黑同時發生。[2023/8/9 21:33:52]

*常規Revert錯誤**以keccak256(Error(string))的前四個字節開始,等于0x08c379a0。

*系統內部錯誤**以keccak256(Panic(uint256))的前四個字節開始,等于0x4e487b71。

Panic有一個額外的錯誤標識。目前可用的Panic有:

*0x01**:使用asset;

*0x11**:SafeMath的溢出。

美聯儲會議紀要:無法即時提高債務上限或對金融體系造成嚴重破壞:金色財經報道,美聯儲5月會議紀要中表示,一些與會者指出,他們擔心聯邦債務法定上限可能無法及時提高,這可能會對金融體系造成嚴重破壞,并導致金融環境收緊,從而削弱經濟增長。關于通脹風險,與會者指出,物價壓力可能比預期更持久,因為消費者支出強于預期,勞動力市場吃緊,特別是如果銀行壓力對經濟活動的影響被證明是溫和的。然而,一些與會者指出,信貸條件進一步收緊可能會減緩家庭支出,減少企業投資和招聘,所有這些都將支持正在進行的產品和勞動力市場供需再平衡,并降低通脹壓力。[2023/5/25 10:38:43]

*0x12**:除以0。

*0x21**:轉換為不存在的枚舉類型。

*0x22**:存儲字節數組編碼錯誤。

*0x31**:在一個空數組上pop()。

*0x32**:索引超長度異常。

Gem空投NFTGemesis #7432以100ETH價格在Blur平臺售出:金色財經報道,據Blur行情數據顯示,OpenSeaPro(前Gem v2)向用戶空投的Gemesis NFT地板價已升至0.036ETH,其中Gemesis#7432以100ETH的價格于半小時前在Blur平臺售出。

此前報道,OpenSea與旗下NFT聚合器Gem正式聯手推出OpenSea Pro(前Gem v2),2023年3月31日之前使用過Gem的用戶可免費鑄造Gemesis NFT。Gemesis NFT可以直接在OpenSea上鑄造。[2023/4/5 13:45:31]

*0x41**:分配過多的內存或創建過大的數組。

*0x51**:調用未初始化的內部函數類型的變量。

更多細節請參見文檔中新的錯誤處理部分這里。

如何遷移到Solidity0.8

美財政部研究:數字貨幣或會降低金融系統波動性,但會給銀行帶來風險:3月23日消息,美國財政部金融研究辦公室近日發布的研究報告稱,金融摩擦可能會限制數字貨幣的潛在收益,無論是作為央行數字貨幣(CBDC)公開發行還是作為穩定幣私下發行。此外,當數字貨幣完全集成時,金融系統的波動性會降低,家庭福利會改善,但銀行部門的穩定性會受到影響。

對于數字貨幣對銀行業影響,報告稱,存款利差的下降是隨著數字貨幣發行而增加危機可能性的主要原因。完全集成的數字貨幣會降低銀行存款利差,尤其是在危機期間,這會限制銀行在損失后進行資本重組的能力。此外,由于銀行在不利沖擊后重建資產的能力較弱,因此銀行的資產平均水平較低,估值大幅下降,銀行業陷入危機或陷入困境的可能性會大大增加。

該報告稱,數字貨幣有潛力成為傳統貨幣的替代品。然而,金融市場的不完善限制了它們的潛在收益。在某種程度上,可能會出現一系列數字貨幣的發行,其中福利-穩定的權衡有利于數字貨幣,即使在競爭環境中數字貨幣的發行成本很高。[2023/3/23 13:21:22]

在大多數情況下,遷移應該是非常直接的。只有在一些情況下,你做奇怪的類型轉換可能會變得更加困難。

Web3數據聚合和分析工具Mystic.com完成450萬美元融資:8月22日消息,Web3 數據聚合和分析工具 Mystic.com 完成 450 萬美元種子輪融資,投資方未披露。Mystic.com 目前處于 Beta 測試版本,計劃于今年晚些時候推出 iOS 和 Android 移動版本。[2022/8/22 12:41:29]

你必須為遷移做出的改變包括:

*ABIEncoderV2現在是默認自動激活。從0.6開始,Encoder就不再是實驗性的了,只是因為遺留的原因,保留了pragmaexperimental這個名字。現在你不需要再加這行了。

*移除任何OpenzeppelinSafeMath,你不再需要它了。

*可能需要進行一些類型轉換。

*msg.sender和tx.origin默認不屬于payable類型。將msg.sender.transfer改為payable(msg.sender).transfer。

*只有在符合給定類型的情況下,才允許類型轉換,所以uint256(-1)將不再工作。使用type(uint256).max代替。

*當多次改變符號時,類型轉換在某些情況下會受到限制,因為類型轉換的順序可能會對結果產生影響。你現在會看到一個類似TypeError的錯誤。不允許從int256到bytes32進行顯示的類型轉換,得先手動轉換為uint256。

*修飾組合

*myContract.functionCall{gas:10000}{value:1ether}()改為:

*myContract.functionCall{gas:10000,value:1ether}()。

*將x**y**z改為(x**y)**z,因為默認的執行順序改變了。

*將byte類型改為byte1。

我省略了一些細節,關于完整的變更日志和所有變更的細節,請查看文檔這里。

本翻譯由CellNetwork贊助支持。

來源:https://soliditydeveloper.com/solidity-0.8

參考資料

登鏈翻譯計劃:https://github.com/lbc-team/Pioneer

翻譯小組:https://learnblockchain.cn/people/412

Tiny熊:https://learnblockchain.cn/people/15

Solidity0.8:https://blog.soliditylang.org/2020/12/16/solidity-v0.8.0-release-announcement/

0.7發布:https://blog.soliditylang.org/2020/07/28/solidity-v0.7.0-release-announcement/

Solidity0.8的文檔:https://learnblockchain.cn/docs/solidity/

SafeMath:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/math/SafeMath.sol

這里:https://medium.com/blockchannel/the-use-of-revert-assert-and-require-in-solidity-and-the-new-revert-opcode-in-the-evm-1a3a7990e06e

這里:https://docs.soliditylang.org/en/latest/control-structures.html#panic-via-assert-and-error-via-require

這里:https://docs.soliditylang.org/en/latest/080-breaking-changes.html

CellNetwork:https://www.cellnetwork.io/?utm_souce=learnblockchain

免責聲明:作為區塊鏈信息平臺,本站所發布文章僅代表作者個人觀點,與鏈聞ChainNews立場無關。文章內的信息、意見等均僅供參考,并非作為或被視為實際投資建議。

本文來源于非小號媒體平臺:

登鏈社區

現已在非小號資訊平臺發布105篇作品,

非小號開放平臺歡迎幣圈作者入駐

入駐指南:

/apply_guide/

本文網址:

/news/9651958.html

免責聲明:

1.資訊內容不構成投資建議,投資者應獨立決策并自行承擔風險

2.本文版權歸屬原作所有,僅代表作者本人觀點,不代表非小號的觀點或立場

上一篇:

盤點零知識證明代表性項目:如何影響和塑造區塊鏈生態系統?

Tags:SOLLIDSOLIDDITsolana幣今日價格行情SOLID幣MOSOLIDMoss Carbon Credit

Filecoin
Hotbit 定于2021年2月7日上線 ROOM (OptionRoom)_HOT

尊敬的用戶: Hotbit即將在開啟ROOM(OptionRoom)數字資產服務,并開放ROOM理財產品。預計年化收益:10%;計息:T1.

1900/1/1 0:00:00
X-DAO—保險行業在DeFi生態中是怎樣的_區塊鏈

DeFi即去中心化金融,它的內涵當然不僅限于各種交易所,傳統金融中的種種形式都是DeFi的重要組成部分,諸如期貨、保險、儲蓄等等.

1900/1/1 0:00:00
庫幣將支持Trias (TRY)總量縮減的計劃,并啟動 TRY升級換幣成TRIAS的工作_RIA

親愛的庫幣用戶, 庫幣將支持Trias(TRY)總量縮減計劃,并即將啟動Trias(TRY)升級換幣成Trias(TRIAS)的工作.

1900/1/1 0:00:00
這些幣出現箱體平臺行情,可以低吸。。。_ENS

? 01 加密數字貨幣市場 1、政策及市場指標 貪婪指數上升了3個點,其他的小幅上升,合約爆倉量有所上升,還會繼續.

1900/1/1 0:00:00
霍比特關于HBC通證模型升級2.0投票結果的公告_HBTC

尊敬的社區用戶: 霍比特發起的“HBC通證模型升級2.0的社區投票”活動,已于2021年2月8日12:00結束.

1900/1/1 0:00:00
CoinBene上線Doge coin (DOGE) 的公告_COI

尊敬的用戶: CoinBene將上線DOGE/USDT幣幣交易,邀您體驗。DOGE充值時間:2021年2月9日10:00DOGE交易時間:2021年2月9日11:00DOGE提幣時間:2021年.

1900/1/1 0:00:00
ads