- Go程序開發(fā)實(shí)戰(zhàn)寶典
- 穆旭東等編著
- 482字
- 2023-10-27 18:20:04
2.1.2 變量聲明與賦值
Go語言中聲明變量有多種形式,未初始化的標(biāo)準(zhǔn)格式如下所示。

定義一個(gè)變量名為a的int型變量,示例如下。

還可以使用批量的方式定義變量,該方式不需要每行都使用var關(guān)鍵字進(jìn)行聲明,具體語法格式如下所示。

未初始化變量的默認(rèn)值見表2.1。
表2.1 未初始化變量的默認(rèn)值

初始化變量的標(biāo)準(zhǔn)格式如下所示。

初始化變量的編譯器自動(dòng)推斷類型格式如下所示。

初始化變量的簡(jiǎn)短聲明格式(短變量聲明格式)如下所示。

分別使用以上三種方式定義一個(gè)名為a的變量,并初始化為25,具體代碼示例如下所示。

使用“:=”賦值操作符可以高效地創(chuàng)建一個(gè)新的變量,這種聲明方式稱為初始化聲明。該聲明方式省略了var關(guān)鍵字,變量類型將由編譯器自動(dòng)推斷。初始化聲明是聲明變量的首選形式,但是它只能用在函數(shù)體內(nèi),不能用于全局變量的聲明與賦值。該聲明方式的變量名必須是沒有被定義過的變量,若定義過,將發(fā)生編譯錯(cuò)誤。

編譯報(bào)錯(cuò)如下所示。

需要注意的是,使用多個(gè)短變量聲明和賦值時(shí),如果至少有一個(gè)新聲明的變量出現(xiàn)在左側(cè),那么即便有其他變量名可能是重復(fù)聲明的,編譯器也不會(huì)報(bào)錯(cuò)。情況如下所示。

雖然這種方法不會(huì)報(bào)錯(cuò),但還是建議盡量避免這種用法。
推薦閱讀
- 演進(jìn)式架構(gòu)(原書第2版)
- Mastering JavaScript Functional Programming
- 深度實(shí)踐OpenStack:基于Python的OpenStack組件開發(fā)
- Instant Testing with CasperJS
- Mastering Ubuntu Server
- 可解釋機(jī)器學(xué)習(xí):模型、方法與實(shí)踐
- Access 2010數(shù)據(jù)庫應(yīng)用技術(shù)(第2版)
- OpenGL Data Visualization Cookbook
- Oracle GoldenGate 12c Implementer's Guide
- 詳解MATLAB圖形繪制技術(shù)
- Software-Defined Networking with OpenFlow(Second Edition)
- Yii2 By Example
- Python全棧開發(fā):數(shù)據(jù)分析
- Learning Zimbra Server Essentials
- The Java Workshop