操作符
| 用法详解 |
:= | 1.(冒号和等号的组合:=),用于明确表达同时进行变量声明和初始化的工作。 2. 出现在:=左侧的变量不应该是已经被声明过的,否则会导致编译错误 举个例子:var ccc 换行 ccc := 2 no new variables on left side of := |
&符号 | 用来声明指针对象,和new一样,如果没有的话就是值对象 |
_ | 一般会这么出现: _, (在其后面跟了一个逗号) 由于GO语言支持多值返回,所以对于“声明而没使用”的变量,同样会给一个错,但是在这种情况下,我们可以使用_来抛弃掉不是我们要的那些返回值,说白一点儿就是说,用了_直接告诉编译器:"我没用的那些变量都是我不用的,你就别报错了". |
& 和* | 以x 为例,如果是 &x 代表的是变量x的地址,就是指针,如果是*就是同时包含了指针和值 |
入参 | func max(a, b int) int { if a > b { return a } return b } 这种 a 不带类型的写法意思就是a 默认取 b的类型, |
import _ | 导入的时候经常会看见在包名前有一个"_" 很多人不理解,我换成自己的话说一下,这个说白了就是告诉系统,你只引了这个包而不调用里面方法也不想用他的函数,那还引他干嘛?那是为了用他的init啊,比如那个著名的:database/sql 的例子,好下面我举个例子:比如在x包下有一个y.go文件里面有一个Test 方法,你如果想在其他包中调用这个Test方法,那么你需要引入这个包 import ( "x" ) 然后在当前包中这样:x.Test() 但是如果你这样写: import ( _"x" ) 此时你将得到一个undefined的异常。这个只是帮助你了解,具体原理你可以看网上一个兄弟写的【点我看文章】他写的很好而且很详细了。 |
未完陆续不断更新 | 未完陆续不断更新 |
未完陆续不断更新 | 未完陆续不断更新 |
未完陆续不断更新 | 未完陆续不断更新 |
都是自己理解的,可能会有偏差,如果有不对的,或是不完整
的,欢迎大家随时指摘和给予纠正,嗜血会及时更新。谢谢大
家!O(∩_∩)O
有疑问加站长微信联系(非本文作者)