Transactions

為什麼我們除了 CTransactions 還需要 CCoins?

  • February 2, 2016

根據我的理解CTransactions,它代表了比特幣中的原子單位。它有輸入CTxIn和輸出CTxOut

任何專家都可以直覺地了解我們為什麼需要CCoins原始碼嗎?為什麼我們應該有一個單獨的修剪類來儲存輸出?

CCoins 是一種內部資料結構,用於表示 UTXO 集中的條目,同時記憶體在記憶體中(參見 CCoinsViewCache)。

出於效率和實用性的原因,它與 CTransaction 是分開的。它缺少用於輸出的向量,從而節省空間。它還具有更高效的序列化形式,允許磁碟上的數據庫更緊湊。此外,它具有我們不希望在無處不在的基本數據類型中使用的便捷方法。由於 CCoins 僅在共識驗證邏輯中使用,因此可以更加具體。

引用自:https://bitcoin.stackexchange.com/questions/42703