摘要: 不同的类型,他们的默认的%v 一个变动的格式化字符串,相当于一个变量,遇到不同类型,就变形成不同的格式. 类型 %v bool %t int/int8/... %d uint/uint8/... %d float32/64/complex64 %g string %s chan %p pointer 阅读全文
posted @ 2020-05-25 19:01 菜鸟++ 阅读(2546) 评论(0) 推荐(0)
摘要: decorator pattern 定义:允许向现有的对象(一个函数也认为是一个对象)添加新功能,而不改变其结构. 多功能螺丝刀的原理 func functionValue(a,b int,do func(int,int)int){ do(a,b) } 像这样,functionValue函数形参里面 阅读全文
posted @ 2020-05-25 18:51 菜鸟++ 阅读(135) 评论(0) 推荐(0)
摘要: 数据类型的分类:第一类值VS第二类值 第一类值:变量中可以存储函数,也就是说func类似int/double. 第二类值: 1.不能存储函数,不能动态创建函数,不能动态销毁函数; 2.只能存储一个指向函数的指针; 阅读全文
posted @ 2020-05-25 17:47 菜鸟++ 阅读(765) 评论(0) 推荐(0)
摘要: 函数执行时,除了运行函数体内的代码,还要使用函数外的代码. 也就是说,这个函数跟函数所使用的到外部信息是一个整体存储的. 这种将函数和它所用的信息作为一个整体,就是闭包. 比如排序,A让B排序,B会做排序,但排序需要知道哪个比哪个大,这点B自己不知道,就需要A告诉它。而这种判断那个大,本身是一种动作 阅读全文
posted @ 2020-05-25 17:46 菜鸟++ 阅读(157) 评论(0) 推荐(0)
摘要: 函数也是一种语法糖. 函数是第一类值,函数也是值,函数也有创建函数的表达式. 函数的定义本质:创建类型为func([形参])[(实参)]的值并将它赋值给一个变量的语句. func foo([形参])[(实参)]{ 函数体 } 它其实是一种语法糖,他是下面写法的美化形式. foo = func([形参 阅读全文
posted @ 2020-05-25 16:16 菜鸟++ 阅读(277) 评论(0) 推荐(0)
摘要: 语法糖(Syntactic sugar),也译为糖衣语法,是由英国计算机科学家彼得·约翰·兰达(Peter J. Landin)发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。通常来说使用语法糖能够增加程序的可读性,从而减少程序代码出错的机会。 从 阅读全文
posted @ 2020-05-25 15:34 菜鸟++ 阅读(261) 评论(0) 推荐(0)
摘要: 匿名返回值:只有数据类型如int,(int,int) 此时,函数体中要显示返回return 1,1 或return a,b 命名返回值:既有返回值类型,又有返回值变量的名称.如:(res int) 此时,函数体中不用显示返回,如return就可以. 阅读全文
posted @ 2020-05-25 15:22 菜鸟++ 阅读(665) 评论(0) 推荐(0)
摘要: 函数是对代码的汇总,可以在别处任意调用. 通常有返回值; 无返回值的函数作用: 1.这个无返回值的函数的参数为引用传递,目的修改参数内容. 2.单元测试:指对软件中的最小可测试单元进行检查和验证.通常是一个人为规定的最小的被测功能模块 3.打印输出 阅读全文
posted @ 2020-05-25 13:47 菜鸟++ 阅读(1546) 评论(0) 推荐(0)