solidity語法一些新的概念

2021-08-20 06:22:35 字數 1707 閱讀 5073

address public minter

address是型別,public關鍵字是自動產生外部訪問該變數的方法  minter是變數名

address型別對映unit型別  public 同上

event sent(address from,address to,unit account);

event事件會在合約的最後一行被觸發   下面是監聽交易的**

coin.sent().watch({},'', function(error, result)

})

msg,

tx,block是全域性變數,儲存了可以被區塊鏈訪問的一些屬性。它持久化了建立合約的節點的位址。

msg.sender是值該方法呼叫者的位址,構造方法名稱需要和合約名稱一致

下面是solidity全部的全域性變數

block.coinbase (address):當前塊的礦場的位址

block.difficulty (uint):當前塊的難度

block.gaslimit (uint):當前塊的gaslimit

block.number (uint):當前塊的數量

block.blockhash (function(uint) returns (bytes32)):給定的塊的hash值, 只有最近工作的256個塊的hash值

block.timestamp (uint):當前塊的時間戳

msg.data (bytes):完整的calldata

msg.gas (uint): 剩餘gas

msg.sender (address):訊息的傳送者(當前呼叫)

msg.value (uint):和訊息一起傳送的wei的數量

now (uint):當前塊的時間戳(block.timestamp的別名)

tx.gasprice (uint):交易的gas**

tx.origin (address):交易的傳送者(全呼叫鏈)

sha3(...) returns (bytes32):計算(緊湊排列的)引數的 ethereum-sha3  hash值

sha256(...) returns (bytes32)計算(緊湊排列的)引數的sha256 hash值

ripemd160(...) returns (bytes20):計算 256個(緊湊排列的)引數的ripemd

ecrecover(bytes32, uint8, bytes32, bytes32) returns (address):橢圓曲線簽名公鑰恢復

addmod(uint x, uint y, uint k) returns (uint):計算(x + y)k,加法為任意精度,不以2 ** 256取餘

mulmod(uint x, uint y, uint k) returns (uint):計算(xy)k,乘法為任意精度,不以2 * 256取餘

this (current contract』s type): 當前合約,在位址上顯式轉換

super:在層次關係上一層的合約

selfdestruct(address):銷毀當前的合同,將其資金傳送到指定address位址

.balance:address位址中的賬戶餘額(以wei為單位)

.send(uint256) returns (bool):將一定量wei傳送給address位址,若失敗返回false。

Oracle Inventory裡的一些概念

事務處理 transaction 是指物料移入庫存 在庫存內移動以及移出庫存.物料搬運單 move order 是在乙個組織內對物料進行移動的請求.保留 reservation 是 與需求 之間的關聯。保留將在 與需求 之間建立乙個永久的資料關聯,代表指定需求 的乙個可靠的物料分配。現有量 on h...

data structure 樹的一些基本概念

定義 乙個樹,每個內部節點,最多只有兩個子節點,每個節點的子節點是有序的,一般稱為left child和right child。遞迴的定義 乙個樹有乙個單個根節點,或者乙個樹其根節點有兩個有序的子節點,每個節點又是乙個二叉樹的根節點。對於非空二叉樹t,n 0 為葉子節點數,而 n 2 是度2節點數,...

關於php7的一些新的語法

用於比較兩個表示式。如當 a 小於 等於和大於 b的時候,分別返回 1 0 1 例子 整數 echo 1 1 0 echo 2 1 1 echo 1 2 1 浮點數 echo 1.5 1.5 0 echo 2.5 1.5 1 echo 1.5 2.5 1 字串 echo a a 0 echo b a...