Go语言中文网 为您找到相关结果 269

IPFS+FILECOIN:下一个网络世界的霸主,没有之一

【前言】 在没有比特币系统以前,互联网世界一片祥和。自从BTC的问世,这一传统互联网领域的被区块链的这一新的生产关系逐渐蚕食。 任何伟大想法的出现以及落地,必须要有一种完美的激励体系才能让其发扬光大。 今天,当ipfs遇上filecoin,下一个网络世界的霸主应运而生,而且这个霸主没有之一。 下面小编就带您详细了解一下下一个网络世界的霸主。【背景】当前互联网正处于一场革命中:1、集中式专有服务正在被去中心化开放服务所代替;2、信任式参与被可验证式计算所代替;3、脆弱的位置寻址被弹性的内容寻址所代替;4、低效率的整体式服务被点对点算法市场所代替;5、比特币、以太坊和其他的区块链网络已经证明了去中心化交易账本的有效性。这些公共账本处理复杂的智能合约应用程序和交易价值数百亿美金的加密资产。这些系统...阅读全文

博文 2018-07-08 09:34:41 向往自由的孩子

寻找同道人-go语言开发

我们的目标:建立自己的艺术电商平台 我们的语言:golang 我们的要求:热爱go语言。致力于go语言开发。 我们希望你有:2年及以上GoLang开发工作经验,1年以上Golang服务器端开发经验 我们能给你的:可以在GO语言方面得到的提升及发挥,有可以探讨并且共同成长的同事,有施展的平台与空间,富有艺术气息的工作环境,舒适良好的生活环境,当然还有很优渥的薪资待遇。 有意愿的小伙伴,快来联系我吧! QQ:1439922309 0571-8168116...阅读全文

golang 2 将会支持泛型

连续使用了半年多的golang,其语言特色不用多说,但个人总有那么几个点不爽: 开放的构造函数 不支持泛型 没有枚举 但就第二点,因为不支持泛型,所以每次从interface{}转换为具体类别的时候都存在开销,且很容易出问题。无意中在github看到了4月份的讨论,但还是感觉很爽!只是希望别拖到2018年。 红底黑字,大大的”Go2”,亮瞎双眼啊! 原文出处: 讨论:https://github.com/golang/go/issues/15292 设计描述:https://github.com/golang/proposal/blob/master/design/15292-generics.md $(function () { $('pre.prettyprint code').each...阅读全文

博文 2016-09-06 05:00:03 qq_26981997

开源消息系统 NSQ

NSQ 是无中心设计、节点自动注册和发现的开源消息系统。可作为内部通讯框架的基础,易于配置和发布。 架构: ![nsqd clients](http://static.oschina.net/uploads/img/201501/27073634_i5Ye.gif) 监控界面: ![nsqadmin](http://static.oschina.net/uploads/img/201501/27073635_MSMt.png) 无单点故障: ![nsq clients](http://static.oschina.net/uploads/img/201501/27073636_C0sa.png) 特点: * 追求简单部署 * 追求高可用、避免单点故障、无中心设计 * ...阅读全文

开源项目 2013-08-12 16:00:00 bitly

使用 Go 基于 RabbitMQ 实现的消息中间件wmq

WMQ是用golang基于RabbitMQ实现的消息中间件,在系统架构对解耦现有业务起到至关重要的作用,服务基于HTTP的API方式具有跨语言的特点,接入十分简单.能够很好的解决并发控制,异步任务,以及消息订阅与分发.工作原理架构图如下: ![image](https://static.oschina.net/uploads/space/2017/1017/110028_7bml_3703517.png) 特点: 跨语言,基于HTTP协议. 高性能,测试环境下消息生产速率达到3000个/s,而且性能毫无下降,瓶颈出现在后端RabbitMQ上. 提供了web-ui管理系统,对服务进行管理 跨平台,运行简单,直接运行一个二进制文件. 支持集群部署,避免单点故障. 完全实现了R...阅读全文

GO語言基礎教程:流程控制

在開始一個新的章節之前先來回顧上一篇文章的部份,首先我們來看這段代碼: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 package main import ( "fmt" ) func main(){ var x,y int=1,2 { var x int=2 { var x int=3 fmt.Println(x,y) //首先輸出3,2 如果我把這行輸出語句注解掉,大家猜猜會如何? } fmt.Println(x,y) //其次輸出2,2 } fmt.Println(x,y) //最後輸出1,2 } 執行結果我已經加到註釋內了,其實沒必要好奇,GO語言就是如此,這種突然出現的大括號構成了複合語句,大括號內的變量作用範圍只能在變量內部,這就涉及到變量的作用...阅读全文

golang 处理数字3位一组展示,中间用逗号分开

package main import ( "fmt" "strings" ) func main() { strResult := NumberFormat("1234567898.55") fmt.Println(strResult) } //格式护数值 1,234,567,898.55 func NumberFormat(str string) string { length := len(str) if length < 4 { return str } arr := strings.Split(str, ".") //用小数点符号分割字符串,为数组接收 length1 := len(arr[0]) if length1 < 4 { return str } count := (le...阅读全文

博文 2017-12-28 01:21:12 18393910396

103101、镜像的构建

1、基础镜像的选择 1.1、编译型语言的容器化(以golang为例) #①构建简单,包含编译是的所有运行环境,但体积大 FROM golang:onbuild EXPOSE 8080 #②构建复杂, 需执行编译动作,体积小 FROM golang:alpine WORKDIR /app ADD . /app RUN cd /app && go build -o goapp EXPOSE 8080 ENTRYPOINT ./goapp #③构建复杂,体积更小,携带工具少,安全性更高(推荐) FROM golang:alpine AS build-env WORKDIR /app ADD . /app RUN cd /app && go build -o goapp FROM alpine RU...阅读全文

博文 2018-08-20 17:34:52 doublegao

思考力 > 行动力

每天都忙忙碌碌,然后最终都一事无成,所以好的思考永远比永不止息的瞎忙带来更多的好处。2019已经过去了四分之一了,跨年时定的任务也在有条不紊的进行,但是总感觉还是少点什么。即使看了不少书,每天坚持学习和坚持运动,但是还是会感觉空虚和迷茫,还是不清楚路在哪里,有些人可能很容易做到只要坚持脚下,不用过多的担心未来,但是我更倾向于做一个去规划未来的人,即使不能做到完全的规划,但是我要知道路在哪里。自我提升看书基本上每天都在坚持看书,看的书籍也比较杂,心理学、技术、理财、小说等等,因为对于未来的焦虑以及不可预期所以总想让自己尽可能多的涉猎各种方面的知识。虽然很多看过之后不会立即见效,但是对于理财相关的,还是有一些收获,最起码懂得了股票基金这些基础概念,也知道怎么跟着别人做一些简单的尝试,也当是对自己...阅读全文

博文 2019-03-21 16:34:44 痛苦狂奔者

【GOLANG】Go语言学习-time包

go语言的time包 组成 time.Duration(时长,耗时)time.Time(时间点)time.C(放时间点的管道)[ Time.C:=make(chan time.Time) ] time包里有2个东西,一个是时间点,另一个是时长 时间点的意思就是“某一刻”,比如 2000年1月1日1点1分1秒 那一刻(后台记录的是unix时间,从1970年开始计算) 时长就是某一刻与另一刻的差,也就是耗时 函数 Sleep函数 time.Sleep(time.Duration) 表示睡多少时间,睡觉时,是阻塞状态 fmt.Println("start sleeping...") time.Sleep(time.Second) fmt.Println("end sleep.") //【结果】打印...阅读全文

博文 2015-06-17 23:01:37 zhonglinzhang

区块链技术产生数字货币时代

链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载。 比特币是一种革命性的数字货币,更是一种颠覆性的创新技术。比特币最大的贡献是创造了信用,解决了困扰互联网进一步发展的拜占庭将军问题。 同时,比特币点对点的网络模式,起到了去中心化的作用,可以提供便捷、有效、安全的价值转移服务。并且,比特币网络用比特币奖励矿工们积极挖矿,为比特币的发展提供了巨大动力。 比特币是一种点对点的支付系统,在这个系统内,支持使用者进行点对点交易转账,从而不再需要银行或者类似支付宝这样的第三方了。这些交易数据每过十分钟左右,都会被打包在一个名为“区块”的文档中,这些“区块”依赖加密哈希函数链接在一起,形成了区块链。 我们常说的比特币挖矿,是指矿工们在比特币世界中利用电脑去计算加密过的哈希值,验...阅读全文

博文 2019-09-27 17:02:44 链客

golang实现的一个小游戏–猜数字

文同步至:http://www.waylau.com/golang-game-guess-numbe/ 随机生成一个数字,输入一个数字看是否匹对,匹配则结速,反之提示是大了还是小了, 代码如下: package main import ( "bufio" "fmt" "math/rand" "os" "strconv" "time" ) var ( endNum int //设置生成数的范围 ) func main() { i := createRandomNumber(endNum) //fmt.Println("生成规定范围内的整数:", i) //本句调试用 fmt.Println("请输入整数,范围为:0-", endNum) flag := true reader := bufio...阅读全文

博文 2014-11-19 01:00:02 kkkloveyou

Golang 笔记之深入浮点数

引言下面的一段简单程序 0.3 + 0.6 结果是什么?1 var f1 float64 = 0.32 var f2 float64 = 0.63 fmt.Println(f1 + f2)有人会天真的认为是0.9,但实际输出却是0.8999999999999999(go 1.13.5)问题在于大多数小数表示成二进制之后是近似且无限的。以0.1为例。它可能是你能想到的最简单的十进制之一,但是二进制看起来却非常复杂:0.0001100110011001100…其是一串连续循环无限的数字(涉及到10进制转换为2进制,暂不介绍)。结果的荒诞性告诉我们,必须深入理解浮点数在计算机中的存储方式及其性质,才能正确处理数字的计算。golang 与其他很多语言(C、C++、Python…)一样,使用了IEEE...阅读全文

博文 2020-01-13 16:33:45 jonson_jackson

消息中间件NSQ深入与实践

1. 介绍最近在研究一些消息中间件,常用的MQ如RabbitMQ,ActiveMQ,Kafka等。NSQ是一个基于Go语言的分布式实时消息平台,它基于MIT开源协议发布,由bitly公司开源出来的一款简单易用的消息中间件。官方和第三方还为NSQ开发了众多客户端功能库,如官方提供的基于HTTP的nsqd、Go客户端go-nsq、Python客户端pynsq、基于Node.js的JavaScript客户端nsqjs、异步C客户端libnsq、Java客户端nsq-java以及基于各种语言的众多第三方客户端功能库。 1.1 Features1). DistributedNSQ提供了分布式的,去中心化,且没有单点故障的拓扑结构,稳定的消息传输发布保障,能够具有高容错和HA(高可用)特性。2). Sc...阅读全文

博文 2017-10-09 05:30:46 Aoho's Blog

推荐四款云端营销工具,希望能帮助到各位商家

今年双十一大促将至,我们精心挑选了几款非常好用的云端营销工具,希望能帮助到各位商家~ 大促营销工具1:用DataV搭建自己的双十一大屏 DataV工具的作用: ▲天猫双十一大屏同款可视化工具,帮助用户轻松搭建实时数据看板 ▲满足您实时获得营销活动数据、跨境电商/全球贸易、线下零售分析、远程/内控等多种业务的展示需求 ▲支持绘制各类基础图表,即便没有设计师,也可搭建出高水准的可视化应用 购买DataV工具: 搭建自己的双十一大屏,电商作战最佳拍档,数据化运营起跑点 -- 阿里云DataV数据可视化大屏基础版51元/年起。点击查看详情: http://click.aliyun.com/m/29953/ ![1](https://...阅读全文

跨平台API调用解决方案

野子电竞数据官网改版https://www.xxe.io/全新登场如何在egret中调用微信API呢,摸索出两种思路,分别是 官方解决方案自己区分平台选择处理用的代码官方解决方案:官方解决方案简单提一下: 新增 platform.ts 文件 在该文件中,定义一个接口Platform,接口定义了各个平台需要实现的接口,如分享,登录等,各平台分别实现一份XXPlatform, 并通过 下面的代码 if (!window.platform) {window.platform = new XXPlatform();} declare let platform: Platform; declare interface Window {platform: Platform}123456789声明一个Pl...阅读全文

博文 2019-09-03 16:32:54 待你幼稚完

一个新的express 风格的web framework

# Gbeta [Gbeta](https://github.com/yyrdl/Gbeta) 是一个新的express 风格的web Framework , 在性能上优于 [Martini](https://github.com/go-martini/martini),有benchmark为证。 ReadMe.md 写的有点着急,不是很详细,功能也只做了基础的,但是留足了开发middleware的接口。 现在刚刚发布第一个版本,目前还未发现issue ,但是想进一步提升性能,并在结构上做进一步优化,特来社区寻找小伙伴 ^_^ ![gbeta_logger.png](http://studygolang.qiniudn.com/160409/ebec9fe8a5a973df29...阅读全文

Golang 包单例模式小记

学习golang也有一段时间了,但是对包的概念不是很清楚,这里模拟一个单例的实现 加深了对包的理解,包中变量作用域的使用 对包全局变量作用域有了理解 目录结构 mian方法 main.go package main import ( "log" "p/p1" _ "t" ) func main() { log.Print("-------下面是main-------") p1.Say() } 包 t t.go package t import ( "p/p1" ) func init() { a := p1.NewPeople() a.SetName("tttttttt") a.SetAge(188) p1.Say() } 包p/p1 p1.go package p1 import ( "l...阅读全文

博文 2016-05-14 10:00:00 soulsu

golang实现的一个小游戏–猜数字

文同步至:http://www.waylau.com/golang-game-guess-numbe/ 随机生成一个数字,输入一个数字看是否匹对,匹配则结速,反之提示是大了还是小了, 代码如下: package main import ( "bufio" "fmt" "math/rand" "os" "strconv" "time" ) var ( endNum int //设置生成数的范围 ) func main() { i := createRandomNumber(endNum) //fmt.Println("生成规定范围内的整数:", i) //本句调试用 fmt.Println("请输入整数,范围为:0-", endNum) flag := true reader := bufio...阅读全文

博文 2014-10-04 19:26:13 kkkloveyou

Go语言小白笔记-(02)初识Go语言

二:初识Go语言1:GO语言介绍GO语言是什么“Go是一种开源的程序设计语言,它意在使得人们能够方便地构建简单、可靠、高效率的软件”(来自go官网golang.org)我们程序员在开发程序,开发软件时都会选择一门编程语言,那么我们应该怎样进行选择呢?可能有同学会说,我们要选择一门简单的,容易学习的,而且开发效率高的,能够在很短的时间内开发完成一个软件,这样老板会非常的满意,能够升职加薪,Python语言或者Ruby语言就非常适合这种快速开发。但是问题是,用这种语言开发的软件,当用户量多了,运行的速度会非常慢,给人的感觉就是非常卡,大家想一下这种软件还有人愿意使用吗?那可能又有同学说了,我们要学习运行速度快的编程语言,例如C或者是C++,但是这类编程语言学习难度是非常大的。那么有没有一种编程语...阅读全文

博文 2019-06-26 10:42:31 18942317505

GO語言基礎教程:流程控制

在開始一個新的章節之前先來回顧上一篇文章的部份,首先我們來看這段代碼: package main import ( "fmt" ) func main(){ var x,y int=1,2 { var x int=2 { var x int=3 fmt.Println(x,y) //首先輸出3,2 如果我把這行輸出語句注解掉,大家猜猜會如何? } fmt.Println(x,y) //其次輸出2,2 } fmt.Println(x,y) //最後輸出1,2 } 執行結果我已經加到註釋內了,其實沒必要好奇,GO語言就是如此,這種突然出現的大括號構成了複合語句,大括號內的變量作用範圍只能在變量內部,這就涉及到變量的作用域了,在PHP中變量也是有作用域的,但是PHP遇到這種突然出現的大括號時不會構...阅读全文

关于SMT,你需要知道的

想知道什么是SMT,首先你总得了解,这三个字母代表的意思: Smartmesh Token。字面意思一目了然,Smartmesh的通证。要了解Smartmesh,自然要先知道什么是mesh,以及它是如何变得smart。 什么是mesh网络?MESH网络:即”无线网格网络”,它是多跳(multi-hop)网络,是由ad hoc网络发展而来,是解决“最后一公里”问题的关键技术之一。在向下一代网络演进的过程中,无线是一个不可缺的技术。无线mesh可以与其它网络协同通信。是一个动态的可以不断扩展的网络架构,任意的两个设备均可以保持无线互联,具有动态自组织、自配置、自维护等突出特点。Mesh网络的五大优势: 快速部署和易于安装 非视距传输(NLOS) 健壮性 结构灵活 高带宽 Mesh网络关键技术: ...阅读全文

快速获取 JSON 文档 gjson

gjson 是一个 Go 开发 包,提供了非常快速和简单的方式来获得一个  JSON 文档 的值 。此文库的存在是为 BuntDB 项目提供高效的 JSON 索引。 ### 安装: 开始使用  GJSON,安装  Go ,并运行 go get:

$ go get -u github.com/tidwall/gjson
此操作可恢复文库。 ### 性能: 与   [encoding/json](https://golang.org/pkg/encoding/json/) ,  [ffjson](https://github.com/pque...阅读全文

开源项目 2016-09-18 16:00:05 tidwall

用 Go 实现图片尺寸的自动调节

我刚上大学那会儿,课上到最后几分钟的时候,我会翘课奔到另外一个我几乎不怎么了解的班上去蹭课。碰巧,那个班上的课是我觉得最棒的课之一 ——计算机视觉。此外,那个课上介绍了一种很赞的算法:Seam Carving,精雕细琢。 这个算法大概是酱紫的:一般我们想改变图片大小的时候,会采用裁剪和缩放的方式,这样一来,图片会损失很多重要信息,在处理过程中,图片甚至被歪曲。那么,我们怎么才能找到图片中视觉信息最少的部分,要调整图片大小的时候,只把这部分移除掉是不是可以呢? 上图展示给我们一副很美的画面:开阔的蓝天,俊逸的城堡。但是,对我们来说,图有点大,我们得往小调一下。怎么弄呢? coraaller翻译于 3周前 2人顶 顶 翻译的不错哦! 第一个进入我们大脑的想法是改变原始图像的尺寸。改变之后的图像(...阅读全文

博文 2016-08-04 19:00:00 hxapp2, coraaller, 无若, HAILINCAI, 昌伟兄

Janus WebRTC Server研究

前言 未编译及测试,直接裸看Janus WebRTC Server代码。 WebRTC本身只支持点对点,群聊只能客户端通过发多路音视频数据给别的客户端,对于客户端压力非常大,所以无法支持更多人的群聊,而且有些NAT是无法通过点对点对连的,所以需要一个中转服务器来中转,经过初步考察有kurento、 licode、 janus三个主要的开源项目,其中又以janus的star最多,所以就先拿这个项目研究一下,我个人是有点想写个golang版本来替代。 janus github地址:https://github.com/meetecho/janus-gateway janus原理 初看了一下janus源码,大概原理如下: janus使用ICE模拟WebRTC客户端与真实的WebRTC客户端进行交换...阅读全文

博文 2018-10-16 09:34:42 云上听风

“花庐”笔记本

早上临时接到一个紧急任务,弄了一个上午总算搞定,吃饭的时候有一些焦虑升起来,计划要做的事情还有好几件都没有收尾。下午的时候临时又有两个会议插入,但却更聚焦,把一些只需要花比较少的时间收尾的事情弄完,这样他们就不再占据我的大脑。临下班时,脑子终于被清空不少。 早上在小伙伴们的帮助下,终于把Golang的环境搭建起来,正式开始我的Go学习之旅。 一直有些舍不得买的“花庐笔记本”终于下单了,小伙伴不太理解,为什么花80块钱买一个笔记本,公司不是有免费的笔记本吗?对我来说,一个笔记本能给我带来一年的好心情也是好值得的一件事情。 小妹儿说,最近高老师做的新技术的那套东西后面需要寻找天使用户,这也是我们接下来的一段时间需要的东西。哈哈!怎么不管世事如何变化,最终的依然还是这几个人配合在一起。 晚上,庄请...阅读全文

博文 2019-01-23 01:34:41 guogegi_龚国静

Go-基础学习总结

1,背景:GO是强类型语言,其产生的原因是因为开发者认为C#,JAVA,C++太过繁重。而C也太过老旧,开发者想模仿C开发出一种接近底层的第三代语言。在当时多核时代盛行的背景下GO顺应潮流,坚持着简单的原则创造了GO 2,基础语法: 基本数据类型:int16 int32 int64 float32 float64 sring complex 3,定义 数据定义: int int[] slice var i int;i=0; var i int =0' var i,j int=0,0; i:=0 i,j:=0,0 var arr =[]int{0,1} var arr =[10]int; arr:=[10]int arr:=[...]{0,1,2,3} 指向数组的指针 这种反人类的设计,个人表...阅读全文

博文 2015-11-07 15:00:01 shuanger_

go语言导入"C"出错问题

以下内容来自转载,出处:本文出自 “松松” 博客,请务必保留此出处http://dongsong.blog.51cto.com/916653/1587363 最近在看人民邮电出版社 许式伟 吕桂华编著的《Go语言编程》,看到【1.2.9 语言交互性】小节的cprint.go。未按照书中源代码格式编写,而是把 import "C" 和 import "unsafe" 合并放入小括号中并和注释结束符 */ 间隔了一行,这也是大多数Go语言学习和开发者经常使用的代码风格,我修改后的代码如下: package main /* #include #include */ import ( "C" "unsafe" ) func main() { cstr := ...阅读全文

博文 2016-04-16 15:00:01 kuoshuang

Golang 图片处理(旋转/居中)

简单旋转分为顺时针旋转90度,顺时针旋转180度,顺时针旋转270度。说到底其实就是矩阵旋转,将各个像素点的色值重新赋值 // 旋转90度 func rotate90(m image.Image) image.Image { rotate90 := image.NewRGBA(image.Rect(0, 0, m.Bounds().Dy(), m.Bounds().Dx())) // 矩阵旋转 for x := m.Bounds().Min.Y; x < m.Bounds().Max.Y; x++ { for y := m.Bounds().Max.X - 1; y >= m.Bounds().Min.X; y-- { // 设置像素点 rotate90.Set(m.Bounds().Max...阅读全文

博文 2019-12-28 21:32:42 韬大帅

TIM:高带宽特征的点对点数字货币-数字货币项目点评

声明:本测评内容仅供参考,任何依本测评内容作出的投资行为,与本测评内容无关。项目有风险,投资需谨慎。 TIM项目创建了一种高带宽点对点货币块链结构体系,该体系将使各种类型的社会价值商品在一个单一的系统上得到了高效的处理,从而提高了跨行业的商业性、安全性、分散性以及可靠性。项目应用了弹性DAG架构技术、GPS节点标识技术、免费子链以及量子安全加密等技术。TIM也是世界上第一个基于量子安全技术的区块链项目。 去中心化是区块链的重要特征之一,但同时也带来了处理数据效率低的问题。目前通过采用大规模分散的分类账本技术,取代以中介为基础的金融或商业系统的可能性正在逐步成为现实。目前在基于DLT的体系结构上正在测试的多种类型的实用程序,虽然说早期的成功可以推动各种类型商业的数字化,但是区块链的带宽问题在很...阅读全文

博文 2018-08-15 13:36:18 币圈百小生

TIM:具有高带宽特征的点对点数字货币 | ONETOP评级

声明:本测评内容仅供参考,任何依本测评内容作出的投资行为,与本测评内容无关。项目有风险,投资需谨慎。Statement: the contents of this assessment are for reference only. Any investment behavior made according to the contents of this assessment is not related to the contents of this assessment. The project is risky and the investment must be prudent. TIM项目创建了一种高带宽点对点货币块链结构体系,该体系将使各种类型的社会价值商品在一个单一的系统上得...阅读全文

博文 2018-08-15 12:35:33 ONETOP评级

[Go] --- map

Email : hahayacoder@gmail.com Go语言中有一种好用的数据类型叫map(映射),相当于C++中的哈希表,map用起来很简单,很C++中的使用大同小异,下面就通过实际的代码来演示Go语言中map的使用 package main import "fmt" func main() { //map哈希表 //使用map创建一个空的map string是键 int是指 m := make(map[string]int) m["one"] = 1 m["two"] = 2 m["three"] = 3 //输出map 顺序不一样 fmt.Println(m) //输出map长度 fmt.Println(len(m)) //从map中取值 value := m["two"] f...阅读全文

博文 2015-06-17 23:08:21 qiurisuixiang

Go 边看边练 -《Go 学习笔记》系列(三)

上一篇: Go 边看边练 -《Go 学习笔记》系列(二) 1.7 指针 支持指针类型 *T,指针的指针 **T,以及包含包名前缀的 *.T。 默认值 nil,没有 NULL 常量。 操作符 "&" 取变量地址,"*" 透过指针访问目标对象。 不支持指针运算,不支持 "->" 运算符,直接用 "." 访问目标成员。 不能对指针做加减法等运算。 x := 1234 p := &x p++ // Error: invalid operation: p += 1 (mismatched types *int and int) 可以在 unsafe.Pointer 和任意类型指针间进行转换。 返回局部变量指针是安全的,编译器会根据需要将其分配在 GC Heap 上。 func tes...阅读全文

博文 2015-09-04 21:37:03 88250

golang调用sql server proc

许久没写博客,近来真有点郁闷,首先自己水平有限,在成为大牛的路上努力挣扎中,狰狞地挣扎,其次是不满某些人的某些态度,我觉得态度是很重要的,好,吐槽完毕。 由于项目需要,需要用到sql server。首先golang连接sql server用的是官方推荐的包github.com/denisenkom/go-mssqldb,可以直接go get。golang调用sql server存储过程是比较蛋疼的,没有什么方法可以直接调用,所以我自己写了个方法: //proc is the proc name //declare is the proc declare with the return values //in is the params in //out is the params out /...阅读全文

博文 2016-09-05 18:00:08 luomoshusheng

知乎上小米变相约瑟夫环面试题微软解法的golang代码

开发十年,就只剩下这套Java开发体系了 >>> 原题: 一副从1到n的牌,每次从牌堆顶取一张放桌子上,再取一张放牌堆底,直到手机没牌,最后桌子上的牌是从1到n有序,设计程序,输入n,输出牌堆的顺序数组 。 微软君给的算法: 取一个1~n的数组,这里为了说明取n=5。按照题目中的规则变换,得到数组:[1 3 5 4 2],将该数组下标与值互换得到[1 5 2 4 3],即为答案。解释:[1 3 5 4 2]的意义是,经过变换,原数组中3号位置的数字现在2号槽,原数组中5号位置的数字现在3号槽... 现在已知变换后的槽存放的是1~n,故只需将下标与值互换即可得到待求数组。 // joseph /* # golang代码 变相约瑟夫环。知乎上一个小米面试题的微软解法(细节去知乎找找看) # # ...阅读全文

博文 2018-09-23 01:33:05 捍卫机密

golang 2 将会支持泛型

连续使用了半年多的golang,其语言特色不用多说,但个人总有那么几个点不爽: 开放的构造函数 不支持泛型 没有枚举 但就第二点,因为不支持泛型,所以每次从interface{}转换为具体类别的时候都存在开销,且很容易出问题。无意中在github看到了4月份的讨论,但还是感觉很爽!只是希望别拖到2018年。 红底黑字,大大的”Go2”,亮瞎双眼啊! 原文出处: 讨论:https://github.com/golang/go/issues/15292 设计描述:https://github.com/golang/proposal/blob/master/design/15292-generics.md $(function () { $('pre.prettyprint code').each...阅读全文

博文 2016-09-18 13:00:04 qq_26981997

[高速通道进阶一]如何理解高速通道的就近接入和一点接入连接全球

摘要: 经常有用户问,我在上海有个IDC,在北京有个VPC,我想通过专线把IDC和VPC连接起来,我是不是要找运营商直接拉一根上海到北京的专线?其实不是这样的,用户只需要接入到最近的接入点即可。高速通道产品设计中有两个重要的思想:一是就近接入策略,二是一点接入连接全球,本文为您进行详细解读。 **点此查看原文:http://click.aliyun.com/m/41049/** **高速通道产品功能** 在展开说明之前,先简单介绍下产品,阿里云 [高速通道](https://www.aliyun.com/product/expressconnect?spm=a2c4e.11153959.blogcont368231.13.1efca03e1nTAfb) 产品主要有两个核...阅读全文

Go1.10.1在Idea上能编译 , 但是标红 ..

![image.png](https://static.studygolang.com/180426/c222ef360501d6fc90394d62684836b7.png) 有种淡淡的忧伤 ~~ 有遇到这种这种情况的小伙伴么?? 有啥办法解决这种不兼容的情况么?? 各种查看Idea这货直接抛出一个警告(不知道是不是这个原因): ![image.png](https://static.studygolang.com/180426/2b5c915a97cc853d9d823bc63dac3a3e.png...阅读全文

博文 2018-04-26 16:55:26 LFANG

程序员渔乐:C++、Python、Rust工程师对项目的神操作,你是哪一种?

image @网友评论: @王昭霖呀:三天后再来真实 @Snow会好好的:看见Python我真的笑了 @laser杨万荣:golang才是最好的编程语言 @-不愿透露姓名的市民李先生:我正好是写这三个语言的 ... @凌晨四点的程序猿:调参一时爽,一直调参就不用上班了 自己是个做了几年全栈开发的老码农,如果你对前端开发这门技术感兴趣,这里推荐一下我的前端学习交流群:767273102,里面都是学习前端的从最基础的HTML+CSS+JavaScript。jQuery,Ajax,node,angular等到移动端HTML5的项目实战的资料都有整理,送给每一位前端小伙伴。最新技术,与企业需求同步。好友都在里面学习交流,每天都会有大牛定时讲解前端技术...阅读全文

博文 2019-05-29 19:34:42 web前端思宇

<6> go select 和 switch

select和switch语法都能相近,但是有重要不同的一点,switch可以做表达式的比较判断,而select只能是io操作的判断。相同点:都能用return跳出来。 // switch i := 1 switch{ case i==1: //doing case i==2: //doing default: // doing } //select ch := make(chan ,bool) select { case <- ch: // doing 当ch有值的时候,会触发这个case default: // doing } $(function () { $('pre.prettyprint code').each(function () { var lines = $(this)....阅读全文

博文 2015-12-15 00:00:00 a11101171