Blockchain

“Array& params”:如何理解“Array”之後的“&” - 類型修飾符?

  • May 18, 2015

我試圖逐行理解“invalidateblock”功能的工作原理。

由於我在 C++ 中處於基礎水平,我無法向自己解釋“數組”之後的“&”是什麼,儘管我知道引用和指針,儘管我發現它是所謂的“類型”修飾符”。我仍然想知道“Array”是一種類似於“int”、“char”等的類型。

我在哪裡可以找到有關定義/解釋 Array 的位置的更多資訊?什麼是成員函式?

提前致謝!

它是 JSON 程式碼的一部分。數組是一個JSON 實體,包含零個或多個 JSON 實體的有序列表。正如它的名字“params”所暗示的,這個包含命令的參數。所以當你看到:

std::string strHash = params[0].get_str();

這將第一個參數放入string被呼叫的strHash. 這是有道理的,因為 invalidateblock 的第一個(也是唯一一個)參數是一個雜湊值,因為這個幫助文本表明:

       "invalidateblock \"hash\"\n"
       "\nPermanently marks a block as invalid, as if it violated a consensus rule.\n"
       "\nArguments:\n"
       "1. hash   (string, required) the hash of the block to mark as invalid\n"
       "\nResult:\n"
       "\nExamples:\n"

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