鏈客,專為開發者而生,有問必答!
實現代幣的管理者
雖然區塊鏈是去中心化的,但是實現對代幣(合約)的管理,也在許多應用中有需求,為了對代幣進行管理,首先需要給合約新增乙個管理者。
我們來看看如果實現,先建立乙個owned合約。
contract owned modifier onlyowner // 實現所有權轉移 function transferownership(address newowner) onlyowner }
這個合約重要的是加入了乙個函式修改器(function modifiers)onlyowner,函式修改器是乙個合約屬性,可以被繼承,還能被重寫。它用於在函式執行前檢查某種前置條件。關於函式修改器可進一步閱讀solidity 教程系列10 - 完全理解函式修改器
如果熟悉python的同學,會發現函式修改器的作用和python的裝飾器很相似。
然後讓代幣合約繼承owned以擁有onlyowner修改器,**如下:
contract mytoken is owned }
代幣增發
實現代幣增發,代幣增發就如同央行印鈔票一樣,想必很多人都需要這樣的功能。
給合約新增以下的方法:
function minttoken(address target, uint256 mintedamount) onlyowner
注意onlyowner修改器新增在函式末尾,這表示只有ower才能呼叫這用函式。他的功能很簡單,就是給指定的賬戶增加代幣,同時增加總**量。
資產凍結
單單以上的**還無法凍結,需要把他加入到transfer函式中才能真正生效,因此修改transfer函式:
function transfer(address _to, uint256 _value)
這樣在轉賬前,對發起交易的賬號做一次檢查,只有不是被凍結的賬號才能轉賬。
代幣買賣(兌換)
可以自己的貨幣中實現代幣與其他數字貨幣(ether 或其他tokens)的兌換機制。有了這個功能,我們的合約就可以在一買一賣中賺利潤了。
先來設定下買賣**
uint256 public sellprice;uint256 public buyprice;function setprices(uint256 newsellprice, uint256 newbuyprice) onlyowner
setprices()新增了onlyowner修改器,注意買賣的**單位是wei(最小的貨幣單位: 1 eth = 1000000000000000000 wei)
新增來新增買賣函式:
function buy() payable returns (uint amount)function sell(uint amount) returns (uint revenue)
加入了買賣功能後,要求我們在建立合約時傳送足夠的以太幣,以便合約有能力回購市面上的代幣,否則合約將破產,使用者沒法先合約賣代幣。
實現gas的自動補充
以太坊中的交易時需要gas。而如果使用者沒有以太幣,只有代幣的情況,就需要自動補充gas的功能。這個功能將使我們代幣更加好用。自動補充的邏輯是這樣了,在執行交易之前,我們判斷使用者的餘額,如果使用者的餘額非常少可能影響到交易進行,合約自動售出一部分代幣來補充餘額,以幫助使用者順利完成交易。
先來設定餘額閾值:
uint minbalanceforaccounts; functionsetminbalance(uint minimumbalanceinfinney) onlyowner
finney 是貨幣單位 1 finney = 0.001eth然後交易中加入對使用者的餘額的判斷。
function transfer(address _to, uint256 _value)
**部署
不同的是建立合約時需要預存餘額,如圖:
如何實現管理者轉身?
如何實現管理者轉身?管理者轉身需要做哪些準備?組織需要提供什麼幫助?自身需要如何規劃?當提到管理者轉身這個詞,那什麼是管理者呢?我理解的管理者是對自己績效負責的知識工作者 或者是對自己和他人績效負責的管理者。而再深究下來,管理者的轉身大概指的是對自己和他人績效負責的管理者。管理者轉身需要做哪些準備呢...
空降管理者PK本土管理者
對公司老闆,特別是發展幾年的民企老闆,經常被乙個問題困擾 當公司發展到某個臨界的節點需要調整管理結構,或者要進一步擴張規模做大時,需要選擇一位新的中 高層管理者時,到底採用空降的方式 以下簡稱空降管理者 還是給機會於內部公司現有的管理人員 以下簡稱本土管理者 現對二種管理者的優劣勢進行比較。本土管理...
管理者的權利
由支配權 強制權 獎賞權構成三種權力各有適用前提和條件。管理者的權力也並不總是有效的,要多表揚 少批評 巧支配。管理者的責任 1 管理者擁有指揮他人的特權,也就負有要對下屬工作負責的額外責任。2 即 下屬在工作中出現任何問題,管理者都負有不可推卸的責任。問題 管理者要負哪些領導責任?管理者的作用 1...