1.16 Returns, Visibility, State Mutability, Fallback

更新 發佈閱讀 2 分鐘

練習題 1

    • 請敘述四種 Solidity 函式的可視性分別對於當前合約 (MyContract)、繼承合約 (DerivedContract)、其他合約 (AnotherContract)的訪問權限。

public - 任何的合約和帳戶都可以呼叫這個函數,也就是在合約的外部和內部均可見。

private - 只有當前合約可以呼叫這個函數,任何外部或繼承合約皆不可呼叫。

external - 只有除了自己和繼承合約以外的合約或帳戶可以呼叫此函數。 

internal - 只有自己和繼承合約的合約或帳戶可以呼叫此函數。


練習題 2

    • 請實作一函式 getContractBalance() 來查看當前合約擁有的餘額。
// SPDX-License-Identifier: MIT
pragma solidity 0.8.24;

contract Balance {
function getContractBalance() public view returns(uint){
return address(this).balance;
}
}

這個合約提供了一個簡單的功能,讓任何人都能夠查詢合約當前的餘額

練習題 3

    • 請使用 Fallback Function 使合約可以接收外部的匯款。 並且使用 REMIX 介面匯款給合約。最後利用上一題的 getContractBalance() 查看一切是否運作正常。
// SPDX-License-Identifier: MIT
pragma solidity 0.8.24;

contract Balance {
function getContractBalance() public view returns(uint){
return address(this).balance;
}

fallback() external payable {
// Handle incoming ether in the fallback function
}

receive() external payable {
// Handle incoming ether in the receive function
}
}

[Reference]

  1. Solidity 教學: 函式 Function, KryptoCamp - 智能合約教學與區塊鏈工程師課程
留言
avatar-img
Follow the Rainmaker 🌧️
5會員
91內容數
尋大神腳印, 亦步亦趨。
2024/06/12
0. 大綱Outline 以太坊交易 發起交易 與智能合約互動 receive & fallback function 1. 舊以太坊交易 Ethereum Gas Tracker - 7 Gwei - Etherscan //交易技術, 表示特定帳戶的交易數量,是計數器, 每發一筆交
2024/06/12
0. 大綱Outline 以太坊交易 發起交易 與智能合約互動 receive & fallback function 1. 舊以太坊交易 Ethereum Gas Tracker - 7 Gwei - Etherscan //交易技術, 表示特定帳戶的交易數量,是計數器, 每發一筆交
2024/05/29
Overview 1. Request Wallet Connection from Metamask get account function get account function 2. Set your smart contract address injected provide
2024/05/29
Overview 1. Request Wallet Connection from Metamask get account function get account function 2. Set your smart contract address injected provide
2024/05/28
在 Solidity 中,constant 變量用於定義不可變的常數值。這些常數在合約的生命週期內不會改變,並且它們的值必須在宣告時設定。使用 constant 關鍵字可以節省 gas,因為它們在編譯時就已經被嵌入到字節碼中,不需要在運行時讀取存儲。 用法 定義常數: 常數變量必須在宣告時初始
2024/05/28
在 Solidity 中,constant 變量用於定義不可變的常數值。這些常數在合約的生命週期內不會改變,並且它們的值必須在宣告時設定。使用 constant 關鍵字可以節省 gas,因為它們在編譯時就已經被嵌入到字節碼中,不需要在運行時讀取存儲。 用法 定義常數: 常數變量必須在宣告時初始
看更多
你可能也想看
Thumbnail
法律主要缺點就是模糊與不確定,卻也成其最大的優點,因為具有靈活和適應程度的契約規則。智能合約主要優點就是自主保證執行,卻構成其最大的限制,導致過度僵化和無法持續與環境同步。只有時間才能證明區塊鏈技術及是否會真正轉變且滲入我們的世界,也就是Web3世界的到來。而我相信智能法律合約將會是未來的發展趨勢!
Thumbnail
法律主要缺點就是模糊與不確定,卻也成其最大的優點,因為具有靈活和適應程度的契約規則。智能合約主要優點就是自主保證執行,卻構成其最大的限制,導致過度僵化和無法持續與環境同步。只有時間才能證明區塊鏈技術及是否會真正轉變且滲入我們的世界,也就是Web3世界的到來。而我相信智能法律合約將會是未來的發展趨勢!
Thumbnail
《轉轉生》(Re:INCARNATION)為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,結合拉各斯街頭節奏、Afrobeat/Afrobeats、以及約魯巴宇宙觀的非線性時間,建構出關於輪迴的「誕生—死亡—重生」儀式結構。本文將從約魯巴哲學概念出發,解析其去殖民的身體政治。
Thumbnail
《轉轉生》(Re:INCARNATION)為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,結合拉各斯街頭節奏、Afrobeat/Afrobeats、以及約魯巴宇宙觀的非線性時間,建構出關於輪迴的「誕生—死亡—重生」儀式結構。本文將從約魯巴哲學概念出發,解析其去殖民的身體政治。
Thumbnail
比特幣區塊鏈為了滿足各種不同的需求與技術,目前衍生出四種不同型態的地址形式,主要是針對安全性、靈活性與新版本兼容性的改革。
Thumbnail
比特幣區塊鏈為了滿足各種不同的需求與技術,目前衍生出四種不同型態的地址形式,主要是針對安全性、靈活性與新版本兼容性的改革。
Thumbnail
文章介紹一個無鎖倉機制的二層放貸技術,讓使用者可以輕鬆且方便地參與defi項目。同時提供智能合約審計機構的信息。
Thumbnail
文章介紹一個無鎖倉機制的二層放貸技術,讓使用者可以輕鬆且方便地參與defi項目。同時提供智能合約審計機構的信息。
Thumbnail
介紹: DFlow 是一個協議,主要為 DEX 流動性的防禦層,並且增強 Solana 鏈的流動性,用戶也能獲得更小的價差、更低的波動性、及更快速的進行交易,預防有毒訂單的影響
Thumbnail
介紹: DFlow 是一個協議,主要為 DEX 流動性的防禦層,並且增強 Solana 鏈的流動性,用戶也能獲得更小的價差、更低的波動性、及更快速的進行交易,預防有毒訂單的影響
Thumbnail
5 月將於臺北表演藝術中心映演的「2026 北藝嚴選」《海妲・蓋柏樂》,由臺灣劇團「晃晃跨幅町」製作,本文將以從舞台符號、聲音與表演調度切入,討論海妲・蓋柏樂在父權社會結構下的困境,並結合榮格心理學與馮.法蘭茲對「阿尼姆斯」與「永恆少年」原型的分析,理解女人何以走向精神性的操控、毀滅與死亡。
Thumbnail
5 月將於臺北表演藝術中心映演的「2026 北藝嚴選」《海妲・蓋柏樂》,由臺灣劇團「晃晃跨幅町」製作,本文將以從舞台符號、聲音與表演調度切入,討論海妲・蓋柏樂在父權社會結構下的困境,並結合榮格心理學與馮.法蘭茲對「阿尼姆斯」與「永恆少年」原型的分析,理解女人何以走向精神性的操控、毀滅與死亡。
Thumbnail
本文概述了加密貨幣和區塊鏈項目中常見的協議功能和技術元素,包括Distribution, Emission Schedule, Utility/Value Capture等。通過瞭解這些概念,投資者和開發者可以更好地理解市場和技術動態,作出更明智的決策。
Thumbnail
本文概述了加密貨幣和區塊鏈項目中常見的協議功能和技術元素,包括Distribution, Emission Schedule, Utility/Value Capture等。通過瞭解這些概念,投資者和開發者可以更好地理解市場和技術動態,作出更明智的決策。
Thumbnail
在AI浪潮下,009819 中信美國數據中心及電力ETF 直接卡位算力與電力雙主軸,等於掌握AI最核心基建。2008從 Apple Inc. 與 iPhone 帶動供應鏈,到如今AI崛起,主線已由應用端轉向底層。AI發展離不開算力與電力支撐,009819的價值,在於押中「沒有它不行」的核心資產。
Thumbnail
在AI浪潮下,009819 中信美國數據中心及電力ETF 直接卡位算力與電力雙主軸,等於掌握AI最核心基建。2008從 Apple Inc. 與 iPhone 帶動供應鏈,到如今AI崛起,主線已由應用端轉向底層。AI發展離不開算力與電力支撐,009819的價值,在於押中「沒有它不行」的核心資產。
Thumbnail
介紹: Concrete 為一個借貸應用鏈,目的是為了改善加密市場高風險問題,並且有個獨特的協議,可再將被清算時得到保護,同時還提供更高的收益率 該項目於 2/15 獲得750萬美元融資,其中包含 Hashed、Tribe Capital、Portal Ventures等機構 目前可登記預先進場資
Thumbnail
介紹: Concrete 為一個借貸應用鏈,目的是為了改善加密市場高風險問題,並且有個獨特的協議,可再將被清算時得到保護,同時還提供更高的收益率 該項目於 2/15 獲得750萬美元融資,其中包含 Hashed、Tribe Capital、Portal Ventures等機構 目前可登記預先進場資
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
Staking也可以稱為質押,但與傳統意義的質押Pledge不同,虛擬貨幣的質押可以被簡單說明為「將持有的虛擬貨幣鎖倉提供鏈上驗證的挖礦行為」,即第一章提到的POS權益證明。
Thumbnail
Staking也可以稱為質押,但與傳統意義的質押Pledge不同,虛擬貨幣的質押可以被簡單說明為「將持有的虛擬貨幣鎖倉提供鏈上驗證的挖礦行為」,即第一章提到的POS權益證明。
Thumbnail
介紹: DOP 是一種區塊鏈隱私協議,在以太坊上運行,使用戶能夠精確管理他們希望分享的資訊(資產持有、交易信息等),主打『您的數據,您的選擇』 項目無融資資料,但推特有大佬追蹤,Kevin Susanto、nftguyy和哥吉拉聯合創辦人shan
Thumbnail
介紹: DOP 是一種區塊鏈隱私協議,在以太坊上運行,使用戶能夠精確管理他們希望分享的資訊(資產持有、交易信息等),主打『您的數據,您的選擇』 項目無融資資料,但推特有大佬追蹤,Kevin Susanto、nftguyy和哥吉拉聯合創辦人shan
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News